bash 脚本来关闭端口

bash 脚本来关闭端口

有人可以检查一下我在这里做错了什么:

killp() {sudo kill $(sudo lsof -t -i:"$@"); l; }

我想将这种情况推广到任何端口。

sudo kill $(sudo lsof -t -i:22)

答案1

我也刚刚明白了。有点。有效。

killp() {sudo kill $(sudo lsof -t -i:"$@")}

l我有一个( )的自定义别名,alias l="LC_COLLATE=C ls -gAG -x -1 --group-directories-first --sort=extension"但在这里没有必要。

答案2

"$@"扩展为函数的所有参数,作为单独的单词。killp 22 33然后会扩展为...lsof -t -i:22 33,这可能是也可能不是你想要的。如果不是,只需改为"$1"仅接受第一个参数。

-sTCP:LISTEN如果您只想关闭监听(服务器)端口而不是传出连接,那么类似的方法在这里也可能有用。

答案3

像这样,

killp () {
  sudo kill `lsof -t -i:$*`
}

相关内容