问一个牵扯到grep 和 管道的怪异问题
发表于 : 2009-10-10 10:13
最近管理服务器碰到的问题,写几行代码说明下。
执行下面对应的脚本,/home/xxx/scripts/demo.sh
假设启动脚本对应的进程/bin/bash /home/xxx/scripts/demo.sh的id是123,
行5 的输出是1234 123 ps o pid,ppid,cmd --ppid=123,这个没有什么问题
行7 的输出是1245 123 /bin/bash /home/xxx/scripts/demo.sh,
不知道为什么会产生一个同名子进程,不用grep是没有这个子进程的
~/scripts/demo.sh
执行下面对应的脚本,/home/xxx/scripts/demo.sh
假设启动脚本对应的进程/bin/bash /home/xxx/scripts/demo.sh的id是123,
行5 的输出是1234 123 ps o pid,ppid,cmd --ppid=123,这个没有什么问题
行7 的输出是1245 123 /bin/bash /home/xxx/scripts/demo.sh,
不知道为什么会产生一个同名子进程,不用grep是没有这个子进程的
代码: 全选
3 while true; do
4 subproc=`ps o pid,ppid,cmd --ppid=$$`
5 echo $subproc
6 subproc=`ps o pid,ppid,cmd --ppid=$$ | grep demo`
7 echo $subproc
8 sleep 3s
9 done