
在shell中获取程序执行时间
我想在几种不同条件下在linux shell中执行某些操作,并能够输出每次执行的执行时间。我知道我可以编写一个可以执行此操作的perl或python脚本,但是有什么方法可以在shell中执行它吗?(碰巧是bash)回答:使用内置time关键字:$帮助时间时间:时间[-p]管道 执行PIPELINE并打印实时,用户CPU时间, ...
2024-01-10
确定Shell程序中的相对路径还是绝对路径
如标题中所述,我需要确定路径是相对路径还是绝对路径,何时运行程序:./program #relativedir/dir2/program #relative~User/dir/dir2/program #absolute/home/User/dir/dir2/program #absolute这是我的测试用例。我到底该如何在Shell程序中执行此操作?或更笼统地说,$0在这种情况下,如何检查路径是相对的还是绝对的?回答...
2024-01-10
如何从Java程序中异步运行Shell脚本
我想从Java程序中异步运行Shell脚本-即在Java程序开始执行该Shell脚本之后,它会继续执行其他操作-并且仅当Shell脚本返回对其的响应时才做进一步的工作..即,它不会显式停止并等待shell脚本的响应。这可能/可行吗?如何实现这种功能?基本上,我将使用一个将管理所有这些服务器的服务器来监视多个...
2024-01-10
来自shell脚本的Java程序中的输入值
我想知道是否有从sh脚本到Java程序中的输入值的方式。例如我有一个program.jar。我做java -jar program.jar它输出:来自shell脚本的Java程序中的输入值Enter your name: 是否可以编写一个脚本sh这样的:java -jar program echo name 其中name的会是该程序的输入?回答:为了呼应数据到你的Java程序从壳做这样的事情...
2024-01-10
带有进程替换的Shell脚本中的语法错误
我有此Shell脚本,可用于备份系统。有一行:tar -Pzcpf /backups/backup.tar.gz --directory=/ --exclude=proc --exclude=sys --exclude=dev/pts --exclude=backups --exclude=var/log / 2> >(grep -v 'socket ignored' >&2)如您所见,我一直在尝试使用此博客文章通过tar过滤掉烦人的,无用的“套接字忽略”错误。我在执行时从shell中得到的是:/ bi...
2024-01-10
如何在Java程序中将参数传递给Shell脚本
我试图运行在运行时调用shell脚本的Java代码。当我在终端中运行脚本时,我正在将参数传递给脚本码:./test.sh argument1Java代码:public class scriptrun { public static void main(String[] args) { try { Process proc = Runtime.getRuntime().exec(...
2024-01-10
通过ssh传递外部shell脚本变量
当我偶然发现一个我想阻止公司访问的邪恶网站时,我在绑定服务器上编辑了named.conf文件,然后更新了代理服务器黑名单文件。我想用一个bash脚本来自动化它。假设我的脚本称为“evil-site-block.sh”,其中包含以下内容:ssh root@192.168.0.1 'echo "#date added $(date +%m/%d/%Y)" >> /var/named/chroot/etc/named.conf; echo "zone \...
2024-01-10
使用Shell脚本发送HTML邮件
如何使用Shell脚本发送HTML电子邮件?回答:首先,您需要撰写邮件。最低要求由以下两个标头组成:MIME-Version: 1.0Content-Type: text/html…以及适当的邮件正文:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title></title></head><body><p>Hello, wor...
2024-01-10
如何在Shell脚本中仅读取单个字符
我想要类似getche()C的选项。如何仅从命令行读取单个字符输入?使用read命令可以做到吗?回答:在ksh中,您基本上可以执行以下操作:stty rawREPLY=$(dd bs=1 count=1 2> /dev/null)stty -raw...
2024-01-10
从shell中使用Perl自定义脚本
我想将一个变量传递给自定义Perl脚本。从shell中使用Perl自定义脚本 $file="my_wa/fin" if [[ "$file" == *"fin" ]]; then script.pl fi 在我的剧本我尝试使用$file我的路径打开和读取文件my $input_filename = "$ENV{file}"; 我明白,我需要以某种方式将其导出,并接受它在我的Perl代码, 但它不承认$file。 - 如果...
2024-01-10
通过Jenkins SSH Shell脚本在远程服务器上启动守护程序神秘退出
我在jenkins上有一个正在构建我的项目的构建作业,完成后,它在远程服务器上打开ssh shell脚本并传输文件,然后停止并启动守护程序。当我从RHEL服务器上的命令行停止并启动守护程序时,它执行得很好。当工作以詹金斯执行时,没有错误。守护程序可以正常停止并且可以正常启动。但是启动后不久,...
2024-01-10
Shell脚本调用sudo; 如何隐藏密码提示
我正在编写一个简单的shell脚本,该脚本会更改网络硬件的mac地址。其中一行是:sudo ifconfig eth0 hw ether 00:99:99:00:00:00我的问题是sudo脚本提示输入密码。有什么办法可以在不提示用户输入密码的情况下执行此操作?回答:最肯定的是,如果您不介意为该特定用户“免费使用”该特定命令:基本上在这...
2024-01-10
在shell中获取文件大小(以字节为单位)的可移植方式?
在Linux上,我使用stat --format="%s" FILE,但是我可以访问的Solaris没有stat命令。那我该怎么用呢?我正在编写Bash脚本,无法在系统上真正安装任何新软件。我已经考虑过使用:perl -e '@x=stat(shift);print $x[7]' FILE甚至:ls -nl FILE | awk '{print $5}'但是,这些看上去都不明智-运行Perl只是为了获取文件大小?还是...
2024-01-10
shell缓冲区大小是4k还是64k?
我在多个地方读到,管道的默认缓冲区大小为4kB(例如,在此处),我ulimit-a倾向于确认该语句:$ ulimit -acore file size (blocks, -c) 0data seg size (kbytes, -d) unlimitedscheduling priority (-e) 0file size (blocks, -f) unlimitedpending signals ...
2024-01-10
如何反转shell字符串中的单词列表?
我有一个字符串中的单词列表:str="SaaaaE SeeeeE SbbbbE SffffE SccccE"我想扭转它以获得"SccccE SffffE SbbbbE SeeeeE SaaaaE"我该怎么做ash?回答:您可以使用awk以下方法:echo "$str" | awk '{ for (i=NF; i>1; i--) printf("%s ",$i); print $1; }'...
2024-01-10
“参数列表太长”限制是否适用于shell内置函数?
假设我想通过标准输入将非常长的字符串传递给命令:string="a very long list of words ..."我能说......么:# not using double quotes around $string is deliberateprintf '%s\n' $string | cmd ...要么cmd <<< $string甚至通过管道将其发送给xargs:printf '%s\n' $string | xargs cmd ...有人可以澄清一下吗?回答:在bash中,操作系统强制...
2024-01-10
异步Shell命令
我正在尝试使用Shell脚本来启动命令。我不在乎是否/何时/如何/为什么完成。我希望该过程开始并运行,但是我希望能够立即回到我的外壳…回答:您可以只在后台运行脚本:$ myscript &请注意,这与将&脚本放入内部不同,后者可能无法完成您想要的操作。...
2024-01-10
使用PHP的交互式shell
只是想知道,是否有可能单独使用PHP创建一个交互式shell。我的意思是您在数据库,python等方面拥有类似的东西。如果是,怎么办?回答:是的,有可能。为了进行交互,该程序必须能够等待并从 stdin中 读取用户输入。在PHP中,您可以通过向打开文件描述符来从 stdin中读取'php://stdin'。从一个不同的...
2024-01-10
如何在shell中重复破折号(连字符)
如何-在shell中重复n次字符?我已经阅读并尝试过此操作,但这不适用于-。它引发错误invalid option。以下是我使用的确切命令:printf '-%.0s' {1..100}原始发布行: printf '-%0.s' {1..100}我还尝试-通过转义来转义,\但在这种情况下,它会重复\-n次。回答:这将引发错误:$ printf '-%.0s' {1..100}; echo ""bash: printf: ...
2024-01-10
如何在Linux Shell中使用正则表达式从文件中提取IP地址?
如何在LinuxShell中通过regexp提取文本部分?可以说,我有一个文件,其中每一行都是一个IP地址,但是位置不同。使用常见的unix命令行工具提取这些IP地址的最简单方法是什么?回答:您可以使用grep将其拉出。grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' file.txt...
2024-01-10
在Linux中更改默认Shell
如何更改默认外壳?该env命令当前显示:SHELL=/bin/tcsh我想将其更改为Bash。回答:尝试linux命令chsh。详细命令为chsh -s /bin/bash。它将提示您输入密码。您的默认登录Shell /bin/bash现在是。手册页中引用了以下内容:chsh命令更改用户登录外壳。这确定了用户初始登录命令的名称。普通用户只能为自己...
2024-01-10
如何在Linux Shell中对变量进行除法?
当我在外壳中按以下方式运行命令时,它将返回expr: non-integer argument错误。有人可以向我解释一下吗?$ x=20$ y=5$ expr x / y expr: non-integer argument回答:这些变量是外壳变量。要将它们作为参数扩展到另一个程序( 即 expr),您需要使用$前缀:expr $x / $y它抱怨的原因是因为它认为您试图对字母字符进...
2024-01-10
linux shell复制粘贴将〜0和1〜符号添加到字符串
我正在运行Ubuntu 16.04。最近,我在通过剪贴板复制粘贴时遇到以下奇怪的行为,例如,假设我想克隆一些存储库。所以,我复制下面的字符串:linux shell复制粘贴将〜0和1〜符号添加到字符串“https://github.com/tensorflow/tensorflow”,然后使用Ctrl + Shift + V粘贴到我的壳git clone之后。我希望:$ git clone https://g...
2024-01-10
在C程序中的Linux Shell中更改工作目录
我的目标是编写一个类似于Linux的基本Shell的C程序。除了更改工作目录外,我一切正常。我已经尝试了system()for输入字符串cd,但没有任何反应。我也尝试过chdir("tokenedstring"),也没有运气。谁有想法?这是我的代码的一部分: fgets(cmdStr, sizeof(cmdStr), stdin); if( strncmp("quit", cmdStr, 4) == 0 || strncmp("...
2024-01-10
如何在Linux Shell中将十六进制转换为ASCII字符?
可以说我有一个字符串5a。这是ASCII字母的十六进制表示Z。我需要知道一个Linux shell命令,该命令将接受一个十六进制字符串并输出该字符串表示的ASCII字符。因此,如果我这样做:echo 5a | command_im_looking_for我会看到一封单独的信Z:Z回答:echo -n 5a | perl -pe 's/([0-9a-f]{2})/chr hex $1/gie'请注意,这不会...
2024-01-10
用于在Linux上获取进程ID的Shell脚本
我想编写一个Shell脚本(.sh文件)以获取给定的进程ID。我要在这里执行的操作是,一旦获得进程ID,就想杀死该进程。我正在Ubuntu(Linux)上运行。我能够用这样的命令来做到这一点ps -aux|grep rubykill -9 <pid>但我不确定如何通过Shell脚本来实现。回答:使用grep上的结果ps是在脚本一个坏主意,因为时...
2024-01-10
linux shell输出到html
有什么办法可以将bash输出转换为html吗?例如,如果我在bash一些彩色输出(类似HTOP),我怎样才能将其转换为HTML标签......(是这样的:<pstyle="color: red">some text</p>)回答:还有ansifilter一些类似的工具,highlight可以从纯文本(例如源文件)生成彩色的html。两者都可以在这里找到。...
2024-01-10
Ansible-将环境中的JSON字符串传递给Shell模块
我正在尝试在环境中传递JSON字符串。- name: Start {{service_name}} shell: "<<starting springboot jar>> --server.port={{service_port}}\"" environment: - SPRING_APPLICATION_JSON: '{"test-host.1":"{{test_host_1}}","test-host.2":"{{test_host_2}}"}'test_host_1是172.31.00.00...
2024-01-10
Linux shell根据第二列排序文件?
我有一个像这样的文件:FirstName, FamilyName, Address, PhoneNumber如何按FamilyName排序?回答:如果是UNIX:sort -k 2 file.txt您可以使用多个-k标志对多个列进行排序。例如,要按姓氏排序,然后按姓氏排序:sort -k 2,2 -k 1,1 file.txt“人排序”中的相关选项:-k,–key = POS1 [,POS2]在POS1处开始一个密钥,在POS2...
2024-01-10
