我想得到一个过程的PID,即" cron"通过命令行。 我尝试了以下脚本。
ps ax|grep 'cron'
但是我得到了一张桌子的一部分,
1427 ? Ss 0:00 /usr/sbin/cron -f
24160 pts/5 S+ 0:00 grep --color=auto cron
我如何从中提取pid?
答案 0 :(得分:3)
答案 1 :(得分:3)
pgrep
实用程序将返回与其参数匹配的当前正在运行的进程的进程ID:
$ pgrep cron
228
它也可能用于" grep for"命令行上的东西:
$ pgrep -f uerfale
69749
69752
$ pgrep -l -f uerfale
69749 slogin uerfale
69752 slogin: /home/kk/.ssh/sockets/uerfale-9022-kk.sock [mux] m
要按名称终止流程,请使用pkill
。它的工作方式与pgrep
相同,但会向匹配的进程发送信号,而不是输出进程ID。
答案 2 :(得分:1)
像这样,例如:
ps -ef|grep 'cron'|grep -v grep|awk '{print $2}'
答案 3 :(得分:1)
你可以试试这个;
ps -o pid,sess,cmd afx | egrep "( |/)cron( -f)?$"
或
pstree -pas <cronPID>