pgrep 和 pkill 使用小记
在停止指定进程时,经常使用如下命令: 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 则可以部分匹配进程名。
posted on 2015-11-20 11:59 zyz913614263 阅读(920) 评论(0) 编辑 收藏 举报