bash:在后台启动多个命令

前端之家收集整理的这篇文章主要介绍了bash:在后台启动多个命令前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图运行一些命令在paralel,在后台,使用bash。这里是我想做的:
forloop {
  //this part is actually written in perl
  //call command sequence
  print `touch .file1.lock; cp bigfile1 /destination; rm .file1.lock;`;
}

反引号(“)之间的部分产生一个新的shell,并连续执行命令。事情是,对原始程序的控制只有在最后一个命令执行后才返回。我想在后台执行整个语句(我不期望任何输出/返回值),我想循环继续运行。

调用程序(有循环的程序)不会结束,直到所有的生成shell完成。

我可以使用perl中的线程来生成不同的线程调用不同的shell,但似乎一个overkill …

我可以启动一个shell,给它一组命令,并告诉它去背景?

我没有测试这个,但如何
print `(touch .file1.lock; cp bigfile1 /destination; rm .file1.lock;) &`;

括号意味着在子shell中执行,但不应该伤害。

原文链接:/bash/390311.html

猜你在找的Bash相关文章