xf_xia 发表于 2012-05-22 23:16

【紧急求助】solaris10 sh环境下子进程不能结束的问题

我在执行脚本时遇到了一个问题。因为脚本有语法错误,结果导致脚本结束了,但是其中的命令没有结束。
程序是这样的(两个文件,在solaris10 sh环境下执行test1.sh):
test1.sh:
#!/sbin/sh
./test.sh

test.sh:
#!/sbin/sh
egrep 'abc' | wc -l file1
echo "----------------end-----------------"

其中,test.sh中由于file1 的位置写错,应该写在管道符的前面。

结果,执行脚本时输出了"----------------end-----------------",并且脚本结束了。
但是,系统中一直有egrep 'abc'的进程没有结束。导致该终端无法响应。


请教各位高人:
1,为什么脚本结束了,但是egrep命令不能结束?
2,egrep 命令没有输入文件,应该处于等待状态,为什么这个脚本能正常运行下去?
3,如果在bash环境下执行,egrep 'abc'的进程在程序结束后也存在,但在几秒之后就自动结束了
    为何在sh环境下,该进程会一直存在呢?

真心求教,不胜感激!3Q!
页: [1]
查看完整版本: 【紧急求助】solaris10 sh环境下子进程不能结束的问题