Answers:
您可以使用pgrep,只要包括这些-f选项即可。这使得pgrep整个命令(包括参数)中都具有匹配关键字,而不仅仅是进程名称。
pgrep -f keyword
从手册页:
-f该模式通常仅与进程名称匹配。时-f被设定,则使用完整的命令行。
如果您确实想避免pgrep,请尝试:
ps -ef | awk '/[k]eyword/{print $2}'
注意[]关键字的第一个字母。这是避免匹配awk命令本身的有用技巧。
kill -9 `pgrep -f keyword`
ps aux | grep chrome
[k]技巧pgrep -f。我的脚本在子外壳中运行,因此我认为它正在使用其父命令(很难确定-执行完命令后返回的pid消失了!)
pkill -9 -f keyword吗?
尝试
ps -ef | grep "KEYWORD" | awk '{print $2}'
该命令应为您提供其中带有KEYWORD的进程的PID。在这种情况下,awk从输出返回第二列中的内容。
| head -1。
要通过特定关键字终止进程,可以在~/.bashrc(linux)或~/.bash_profile(mac)中创建一个别名。
alias killps="kill -9 `ps -ef | grep '[k]eyword' | awk '{print $2}'`"
| head -1包装的末尾添加一个管道,可以使整个包装变得美观而整洁。