sor*_*rin 22 bash awk sed pid
我正在寻找一行返回正在运行的进程的 pid 的行。
目前我有:
ps -A -o pid,cmd|grep xxx|head -n 1
这将返回拳头pid, command。我只需要输出中的第一个数字,而忽略其余部分。我想sed或awk会在这里提供帮助,但我对他们的经验有限。
pid, command
sed
awk
另外,这还有一个问题,如果 xxx 没有运行,它会返回 grep 的 pid。
有一行真的很重要,因为我想重用输出来做其他事情,比如杀死那个进程。
小智 28
如果您只想要进程的 pid,则可以使用(pgrep如果可用)。pgrep <command>将返回命令的 pid(或 pid 列表,以防有多个命令实例在运行,在这种情况下,您可以使用head或其他适当的命令) 希望这会有所帮助!
pgrep
pgrep <command>
head
che*_*ner 7
只需要一个命令;您只需要一行空格分隔值中的第一个字段:
ps -A -o pid,cmd|grep xxx | grep -v grep |head -n 1 | awk '{print $1}'
嗯,两个。我添加了另一个 grep 以从输出中删除 grep 本身。
小智 6
只需使用 pgrep,它就更直接了
pgrep -o -x xxxx
以上选择了具有确切名称的最旧进程
小智 5
pidof xxx在linux上就足够了
pidof xxx
归档时间:
14 年,5 月 前
查看次数:
67722 次
最近记录:
10 年,8 月 前