创建暂停的后台作业

时间:2016-12-13 21:11:59

标签: bash sh background-process jobs

使用Bash,如何在暂停/停止状态下启动后台作业?

我必须执行大约一百个内存密集,耗时的过程。顺序运行它们需要很长时间:

for i in inputs-list; do
  memory-hog $i
done

然而同时运行它们会杀死我的机器:

for i in inputs-list; do
  memory-hog $i &
done

我希望我的流程以背景,暂停工作开始;然后我会使用bg恢复其中一些,同时监控内存消耗。

1 个答案:

答案 0 :(得分:2)

在后台启动每个流程,然后发送SIGSTOP

for i in inputs-list; do
  memory-hog $i &
  kill -SIGSTOP $!
done