【发布时间】:2012-08-06 08:28:30
【问题描述】:
我在 bash 脚本中启动了这个命令:
rsync -av $sourcedir/ $destdir/
如何将特定命令的 PID 存储在同一脚本的变量中?
我试过了:
rsync -av --stats $sourcedir/ $destdir/ && pid=$(echo $$)
但在日志文件中为该操作报告的 pid 与打印出来的回显 $pid 不同
感谢您的帮助!
【问题讨论】:
-
为什么要知道这个命令的PID?如果您同步运行它,则该进程将在您尝试获取其 PID 时完成,因此该 PID 将不再存在,或者将引用不同的进程。
-
$$是当前 shell 的进程 ID,而不是最近运行的命令。此外,pid=$$就足够了。