按名称杀死特定端口上的进程
kill a process on a specific port by name
我在端口 3200 上有一个进程 运行,它与其他端口上的其他进程通信。
我知道我可以通过 kill -9 $(lsof -t -i:3200)
.
终止给定端口上的进程
我的问题是 lsof
的输出还包含正在与我要杀死的进程通信的其他进程:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 16379 tirafesi 102u IPv6 156964 0t0 TCP localhost:41162->localhost:3200 (ESTABLISHED)
python3 16793 tirafesi 3u IPv4 158199 0t0 TCP localhost:51101->localhost:3200 (ESTABLISHED)
processtokill 16802 tirafesi 8u IPv4 156963 0t0 TCP *:3200 (LISTEN)
processtokill 16802 tirafesi 10u IPv4 158788 0t0 TCP localhost:3200->localhost:51101 (ESTABLISHED)
processtokill 16802 tirafesi 11u IPv4 156965 0t0 TCP localhost:3200->localhost:41162 (ESTABLISHED)
如何终止端口 3200 上名为 processtokill
的进程?
您想终止正在侦听端口 3200 的进程,因此:
kill -9 $(lsof -t -i:3200 -sTCP:LISTEN)
我会尝试:
kill -9 $(lsof -i:3200 | grep ^processtokill | awk '{print }' | uniq)
我在端口 3200 上有一个进程 运行,它与其他端口上的其他进程通信。
我知道我可以通过 kill -9 $(lsof -t -i:3200)
.
我的问题是 lsof
的输出还包含正在与我要杀死的进程通信的其他进程:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 16379 tirafesi 102u IPv6 156964 0t0 TCP localhost:41162->localhost:3200 (ESTABLISHED)
python3 16793 tirafesi 3u IPv4 158199 0t0 TCP localhost:51101->localhost:3200 (ESTABLISHED)
processtokill 16802 tirafesi 8u IPv4 156963 0t0 TCP *:3200 (LISTEN)
processtokill 16802 tirafesi 10u IPv4 158788 0t0 TCP localhost:3200->localhost:51101 (ESTABLISHED)
processtokill 16802 tirafesi 11u IPv4 156965 0t0 TCP localhost:3200->localhost:41162 (ESTABLISHED)
如何终止端口 3200 上名为 processtokill
的进程?
您想终止正在侦听端口 3200 的进程,因此:
kill -9 $(lsof -t -i:3200 -sTCP:LISTEN)
我会尝试:
kill -9 $(lsof -i:3200 | grep ^processtokill | awk '{print }' | uniq)