Tag: bash

Bash脚本对目录中的所有文件执行命令

有人可以提供代码来执行以下操作:假设有一个文件目录,所有这些都需要通过程序运行。 程序将结果输出到标准输出。 我需要一个将进入目录的脚本,对每个文件执行命令,并将输出连接成一个大的输出文件。 例如,要在一个文件上运行命令: $ cmd [option] [filename] > results.out

三元运算符(?:)在Bash中

有没有办法做这样的事情 int a = (b == 5) ? c : d; 使用Bash?

“#!/ usr / bin / env bash”和“#!/ usr / bin / bash”之间的区别?

在bash脚本的头文件中,这两个语句有什么区别? #!/usr/bin/env bash #!/usr/bin/bash 当我试图看到env手册页时,我只是得到这个定义: env – run a program in a modified environment 这是什么意思?

recursion复制文件夹,排除一些文件夹

我想写一个简单的bash脚本,将包括隐藏的文件和文件夹的文件夹的全部内容复制到另一个文件夹,但我想排除某些特定的文件夹。 我怎么能做到这一点?

如何使用bash / sed脚本删除文本文件的第一行?

我需要使用bash脚本从一个巨大的文本文件中重复删除第一行。 现在我正在使用sed -i -e "1d" $FILE – 但大约需要一分钟的时间才能删除。 有没有更有效的方法来完成这个?

如何计算文档中的行数?

我有这样的线条,我想知道我实际上有多less线… 09:16:39 AM all 2.00 0.00 4.00 0.00 0.00 0.00 0.00 0.00 94.00 09:16:40 AM all 5.00 0.00 0.00 4.00 0.00 0.00 0.00 0.00 91.00 09:16:41 AM all 0.00 0.00 4.00 0.00 0.00 0.00 0.00 0.00 96.00 09:16:42 AM all 3.00 0.00 1.00 0.00 0.00 0.00 0.00 0.00 96.00 09:16:43 AM all 0.00 0.00 1.00 […]

相当于从GNU到solaris的date

在GNU中的命令date我可以这样做: date -d "+4 day" datei=20130101 i=5 date -d "$datei +$i day" 但我喜欢知道: 我怎么能在Solaris中做到这一点? 用date命令

PHP的exec $ PATHvariables缺less元素

当我在命令行上回显$ PATH时,它会返回 /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Applications/MAMP/Library/bin:/usr/local/git/bin:/usr/X11/bin 当我执行这个PHP代码 exec('echo $PATH; whoami; less /etc/paths; 2>&1') 我明白了 string 'echo $PATH; whoami; less /etc/paths; 2>&1' (length=56) array 0 => string '/usr/bin:/bin:/usr/sbin:/sbin' (length=29) 1 => string 'eric' (length=4) 2 => string '/usr/bin' (length=8) 3 => string '/bin' (length=4) 4 => string '/usr/sbin' (length=9) 5 => string '/sbin' (length=5) 6 => string '/usr/local/bin' (length=14) […]

bash:$ 与$((<arithmetic-expression>))

我刚刚碰到了bash语法: foo=42 bar=$[foo+1] # evaluates an arithmetic expression 当我谷歌search这个,我发现http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_03_04.html#sect_03_04_05 : 3.4.6。 算术扩展 算术扩展允许评估算术expression式和replace结果。 算术扩展的格式是: $(( EXPRESSION )) … 只要有可能,Bash用户应该尝试使用带有方括号的语法: $[ EXPRESSION ] 但是,这只会计算EXPRESSION的结果,不做任何testing… 在我的bash手册页中,我只能find$(( EXPRESSION ))forms,如: foo=42 bar=$((foo+1)) # evaluates an arithmetic expression 那么什么样的testing不是用$[…] $((…))执行的$[…]执行的,还是$[…]只是$((…))的传统版本?

Bash:限制并发作业的数量?

有没有简单的方法来限制bash中的并发作业数量? 我的意思是当在后台运行n个以上的并发作业时,使得&阻塞。 我知道我可以用ps |来实现这个 grep式的技巧,但有没有更简单的方法?