有时我想要killall
某个进程,但运行killall
不起作用。因此,当我尝试再次启动该过程时,它会失败,因为上一个会话仍在运行。然后我不得不乏味地运行killall -9
它。所以为了简化我的生活,我创建了一个realkill
脚本,它是这样的:
PIDS=$(ps aux | grep -i "$@" | awk '{ print $2 }') # Get matching pid's.
kill $PIDS 2> /dev/null # Try to kill all pid's.
sleep 3
kill -9 $PIDS 2> /dev/null # Force quit any remaining pid's.
那么,这是最好的方法吗?我可以通过哪些方式改进此脚本?