【发布时间】:2019-09-29 14:35:12
【问题描述】:
我在同一目录中有一组shell,我想执行所有开头有结果的shell,例如:
result.sha
result.shb
result.shc
...
它的工作发现下面的脚本用匹配的reg执行所有shell,但是我怎样才能让它们中的每一个在后台并行运行
find . -type f -name 'result.*' -exec sh {} \;
我试过了,但它不起作用:
find . -type f -name 'result.*' -exec sh {} \;&
【问题讨论】:
-
请注意,以
sh scriptname运行程序不是很好的形式;这样做会忽略该程序的 shebang,阻止它选择使用哪个 shell(如果它,f/e,需要 ksh 或 bash 扩展;或者是 Python 或 awk 脚本或编译的可执行文件而不是 shell 脚本)全部)。相比之下,./scriptname让操作系统启动选择的脚本解释器。