看板Linux
标 题Re: [问题] ps + grep
发信站SayYA 资讯站 (Tue Jun 24 12:55:32 2008)
转信站ptt!ctu-reader!ctu-peer!news.nctu!News.Math.NCTU!SayYa
※ 引述《[email protected] (月)》之铭言:
> 请问一下
> 如果我要用 ps 去找某一个行程是否在执行中
> (ex) ps | grep "testprocess"
> 结果会永远会有结果 因为它连这个动作都算进去了
> 5407 root 304 S grep testprocess
> 这样就不能用了 ...
> 如果我先把结果先写到某个档案 ,再去 grep
> ps > tmp.txt
> cat "tmp.txt" | grep "testprocess"
> 这样又会受到长度限制
> 因为我发现只要某一行的长度太长 它就不会完整显示在 tmp.txt
> (ex)
> 605 root 884 S /usr/sbin/runnetwork -a 192.168.0.1 -c /etc/ ..... (後
> 面的都没有了,只印到一半)
> 而我要判断的 key 就这样被切掉了....
> 请问有什麽方法可以解决这问题吗?谢谢 ^^
1. ps 可以使用 -w 参数,多用几次可以避免被截断。ex: ps axwww | grep "xxx"
2. 至於统计到本身 grep 的使用,可以於 grep 搭配 -v 避开相关
字串不包含进去。
3. 不过个人建议可以使用 pgrep 可以直接统计是否该程式有执行。ex:
pgrep "xxxxxx"
有显示 pid 编号就是表示有找到。
--
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
现代人普遍的现象: 「小学而大遗」、「舍本而逐末」
「以偏而概全」、「因噎而废食」
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
--
※ Origin: SayYA 资讯站 <bbs.sayya.org>
◆ From: localhost