Linux一条命令帮你干掉进程

linux干掉进程需要先使用ps、netstat、lsof等命令查看pid才可以使用kill干掉进程,期间要来回输入多条命令

使用一条命令将需要的进程干掉

# 需要把下面docker开启的代理进程干掉,正常操作是 ps -ef | grep docker 在使用 kill -9 4872

[root@localhost ~]# ps -ef | grep docker

root 1034 1 0 05:55 ? 00:00:35 /usr/bin/dockerd

root 1202 1034 0 05:55 ? 00:00:36 docker-containerd --config /var/run/docker/containerd/containerd.toml

root 4858 1034 0 15:32 ? 00:00:00 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 8084 -container-ip 172.17.0.2 -container-port 8084

root 4868 1034 0 15:32 ? 00:00:00 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 8083 -container-ip 172.17.0.2 -container-port 8083

root 4872 1202 0 15:32 ? 00:00:00 docker-containerd-shim -namespace moby -workdir /var/lib/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/df5de1038c0e0068fb6c0c86421c76616ce45f7cb5130cb247e6a928 -address /var/run/docker/containerd/docker-containerd.sock -containerd-binary /usr/bin/docker-containerd -runtime-root /var/run/docker/runtime-runc

一条命令干掉进程

# awk {print $2} 筛选出第2列的内容

# awk NR==4 筛选出第4行的内容

[root@localhost ~]# kill -9 $(ps -ef | grep docker | awk {print $2}| awk NR==4)

# 已经干掉了进程

[root@localhost ~]# ps -ef | grep docker

root 1034 1 0 05:55 ? 00:00:35 /usr/bin/dockerd

root 1202 1034 0 05:55 ? 00:00:36 docker-containerd --config /var/run/docker/containerd/containerd.toml

还可以是用这条,效果一样

[root@localhost ~]# ps -ef | grep docker | awk {print $2}| awk NR==9 | xargs kill -9