【发布时间】:2014-09-09 14:02:14
【问题描述】:
我想在一个主脚本中一个接一个地调用多个 C shell 脚本。 由于先前的批处理脚本创建了以下脚本所需的文件,因此我必须等到第一个脚本成功终止。 如何实现查询上一个脚本是否仍在运行或已经停止?
非常感谢!
【问题讨论】:
标签: batch-file call jobs csh
我想在一个主脚本中一个接一个地调用多个 C shell 脚本。 由于先前的批处理脚本创建了以下脚本所需的文件,因此我必须等到第一个脚本成功终止。 如何实现查询上一个脚本是否仍在运行或已经停止?
非常感谢!
【问题讨论】:
标签: batch-file call jobs csh
好的,我想通了:
#!/bin/csh
csh 1_script.sh
set pid1=$!
csh 2_script.sh
set pid2=$!
wait $pid1
wait $pid2
【讨论】:
$pidN 的任何引用。 .... $! 是在后台运行的最后一个进程的 PID,在 cmd 行上附加了 &。鉴于您只需要在 1_script.sh 完成后运行 2_script.sh,因此在后台运行将不是您想要的。基本上,你需要一个 3 行脚本,line1 加上对 csh 的 2 个调用(你可能也不需要 csh,只需使用 ./1_script.sh 或 /path/to/1_script.sh 等。祝你好运。