一次关闭许多端口

时间:2016-07-17 19:50:44

标签: macos terminal kill

当我想杀死给定端口上的进程时(比如8000)我使用命令:

kill -9 `lsof -i :8000`

有没有办法一次关闭多个端口?我必须杀死端口8000-9000上的进程并且手动执行此操作效率非常低。

1 个答案:

答案 0 :(得分:1)

好的,首先尝试为此提供一个工作脚本。

#!/bin/bash
for i in {8000..9000}
do
   kill -kill `lsof -t -i tcp:$i`
done

将上述内容放在.sh文件中myportrangekiller.sh并使其可执行,chmod +x myportrangekiller.sh并使用$ ./myportrangekiller.sh从终端运行它。 这将循环通过端口8000-9000并终止这些进程。

我很难验证它是否有效,因为我在OS X El Capitan中运行命令时会得到以下信息,

  

kill:usage:kill [-s sigspec | -n signum | -sigspec] pid | JOBSPEC   ...或者杀死-l [sigspec]

顺便说一句,我稍微改变了你的命令,从lost改为lost,有点假设你拼错了那个二进制文件的名字。