Shell 使用一条线通过pid终止流程
我有一个类似关键字的多个进程。我必须一次干掉所有的过程。像Shell 使用一条线通过pid终止流程,shell,Shell,我有一个类似关键字的多个进程。我必须一次干掉所有的过程。像 ps -ef |grep raj root 3129 1 0 15:32 ? 00:00:00 /usr/lib/raj/msisdn root 3165 1 0 15:36 ? 00:00:00 /bin/sh /usr/lib/raj/raj-1.sh root 3166 3165 0 15:36 ? 00:00:00 /usr/li
ps -ef |grep raj
root 3129 1 0 15:32 ? 00:00:00 /usr/lib/raj/msisdn
root 3165 1 0 15:36 ? 00:00:00 /bin/sh /usr/lib/raj/raj-1.sh
root 3166 3165 0 15:36 ? 00:00:00 /usr/lib/raj/raj-2
root 3170 2236 1 15:36 pts/0 00:00:00 grep raj
我听说这可以用awk来完成。我需要的是一个终止所有进程的线性命令:)关于:
pgrep -f raj | xargs kill
我建议你跑步
pgrep -f raj | xargs ps
首先,确保您正在终止正确的进程
编辑:如果要使用awk,请尝试:
ps -ef | grep raj | awk '{print $2}' | xargs kill
但是它比pgrep和kill更冗长。就像单独获取PID并杀死所有这些PID一样。这个问题可能属于serverfault。compkill-9-f raj甚至更短