【发布时间】:2018-11-27 13:41:04
【问题描述】:
我正在尝试制作一个 bash 脚本来杀死一个进程,然后它会做其他事情。
PID=`ps -ef | grep logstash | grep -v "grep" | awk '{print $2}'`
echo $PID
kill -9 $PID
echo "logstash process is stopped"
rm /home/user/test.csv
echo "test.csv is deleted."
rm /home/example.txt
echo "example.txt is deleted."
当我运行脚本时,它会像预期的那样杀死 logstash,但它也会终止我的整个脚本。
我也试过:kill -9 $(ps aux | grep 'logstash' | awk '{print $2}')。
使用此命令,我的脚本也将被终止。
【问题讨论】:
-
你的脚本名称是什么?你为什么用
kill -9? -
我的脚本是 stoplogstash.sh,我正在使用 kill 强制停止进程。
-
给你的脚本起一个不包含“logstash”的名字:-)
-
您的脚本名称使 grep 返回它自己的 PID。请将其 grep 为 '[ ]logstash[ ]'
标签: linux bash shell logstash kill