2012-08-16 75 views
3

在我写的bash脚本中,我试图在后台启动一个进程(睡眠),然后暂停它。最后,这个过程结束了。出于某种原因,当我发送带有停止信号的kill命令时,它只是继续运行,就好像它什么也收不到。我可以从命令行执行此操作,但bash脚本无法按预期工作。BASH脚本暂停/继续脚本内的过程

sleep 15& 
pid=$! 
kill -s STOP $pid 
jobs 
kill -s CONT $pid 

回答

2

你可以把它通过在脚本中启用“监控模式”工作:set -m

请参阅why-cant-i-use-job-control-in-a-bash-script了解更多信息

+0

非常感谢您!我无法弄清楚为什么我可以在终端上做到这一点,但不是在剧本中。 – Jeremy 2012-08-16 18:03:33