我编写了以下脚本,如果 grep 在文件中找不到相关字符串,它会启用 20 秒的超时。
该脚本运行良好,但脚本的输出是这样的:
./test: line 11: 30039: Killed
Run Code Online (Sandbox Code Playgroud)
如何从 kill 命令中禁用此消息?
如果进程不存在,如何告诉kill命令忽略?
THX
耶尔
#!/bin/ksh
( sleep 20 ; [[ ! -z ` ps -ef | grep "qsRw -m1" | awk '{print $2}' ` ]] && kill -9 2>/dev/null ` ps -ef | grep "qsRw -m1" | awk '{print $2}' ` ; sleep 1 ) &
RESULT=$!
print "the proccess:"$RESULT
grep -qsRw -m1 "monitohhhhhhhr" /var
if [[ $? -ne 0 ]]
then
print "kill "$RESULT
kill -9 $RESULT
fi
print "ENDED"
./test
the proccess:30038
./test: line 11: 30039: Killed
kill 3003
Run Code Online (Sandbox Code Playgroud)