我确定这可能是一个可耻的愚蠢问题,但感觉就像我已经完成了两圈关于流程管理,输出重定向等事情的网络,但是我很难挣扎到理解这一切就足以实现我的目标。
本质上:
我想在后台运行一个shell脚本(在调用时传递一些参数);并在运行时,将该实例的pid写入指定的文件。
./offtimer.sh device1 10 &
当然在后台运行脚本,并将该实例的pid输出到屏幕;我想把这个号码放到一个文件中(例如,device1.pid)。
我知道(通过阅读以及试验和错误,我保证!)
./offtimer.sh device1 10 & > device1.pid
不是有效的语法;但是,尽管我已经阅读了线索,但我无法找到一种方法。
真诚地感谢任何帮助!
[R
答案 0 :(得分:1)
您可以使用$!访问最后一个子进程ID。
./offtimer.sh device1 10 &
echo $! > device1.pid
答案 1 :(得分:0)
./ offtimer.sh device1 10> device1.pid&
或者,您可以将其写入脚本中的文件,而不是将其输出到stdout。
答案 2 :(得分:0)
$!是最后一个后台流程的ID。
./offtimer.sh device1 10 &
echo $! > device1.pid