您的位置:首页 > 其它

pgrep 和 pkill 使用小记

2015-11-20 11:59 218 查看
在停止指定进程时,经常使用如下命令:

kill `ps aux | grep -w program_name | grep -v grep | awk '{print $2}'`
使用 pgrep 和 pkill 可以简单的实现;如下列举几个pgrep和pkill的例子:
pgrep -lf gs2 == ps aux | grep gs2
pgrep -f program_name 列出进程名为 program_name 的ID,f参数可以匹配command中的关键字;
pkill  -x program_name 结束掉 进程名为 program_name 的进程,x参数启用精确匹配;
pgrep -ln httpd 列出最新启动的apache进程ID,-l 参数用来显示进程名称;
pgrep -lo httpd 列出最早启动的apache进程ID;
ssh 10.10.10.10 "pgrep -f 'httpd' " > /dev/null  根据 $? 来判断是否有启动 apache 进程,然后进行下一步操作
-------------------------------------------------------------------------------------------------------
小结:
grep使用 -w 参数拥有全文精确匹配功能;
pgrep和pkill的 -x 参数只能精确匹配进程名称,无法进行全文精确匹配,虽然可以使用 -f 参数来匹配command中的关键字,但是 -f 和 -x 同时使用却无法起到全文精确匹配的作用;

pidof 和 pgrep 有类似的功能,都可以列出进程的ID,只不过 pidof 要求精确输入进程名,一个字符都不能少,而 pgrep 则可以部分匹配进程名。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: