3
在管道中较早获取命令的PID
我正在编写一个bash脚本,用于inotifywait监视目录并在检测到更改时启动操作。就像是: inotifywait -m ... | while read f; do something; done 由于inotifywait不会自行终止,因此该脚本不会停止。 所以我的计划是获取inotifywait进程的PID,将其保存到文件中,然后让另一个进程将其杀死,例如: inotifywait -m ... | { echo ??PID?? > pid-file; while ... } 但我不知道如何获取PID。有没有简单的方法可以做到这一点?另一种方法是将shell脚本的PID保存$$到文件中并杀死整个shell脚本,但是我想在while循环后进行一些清理。 我已经尝试过使用coproc,但我认为它会起作用,但似乎比所需的更为复杂。