(或如何终止子进程)?
inotifywait -mqr --format '%w %f %e' $feedDir | while read dir file event
do
#something
done &
echo $! #5431
例子:
>$ ps
PID TTY TIME CMD
2867 pts/3 00:00:02 bash
5430 pts/3 00:00:00 inotifywait
5431 pts/3 00:00:00 bash
5454 pts/3 00:00:00 ps
看起来如果我杀死5431,那么inotifywait的5430将继续运行,但如果我杀死5430,那么这两个进程都会死亡。我不能可靠地假设inotifywait的pid始终比$!少1个吗?
while
。 - Jan Matějkamknod
或mkfifo
创建一个命名管道,方法是:command1 > PIPE &; pid1=$PID; command2 < PIPE
。有关命名管道的更多信息,请参见http://www.linuxjournal.com/content/using-named-pipes-fifos-bash。 - haridsv