【问题标题】:How to check whether particular port is open or closed on UNIX? [closed]如何检查特定端口在 UNIX 上是打开还是关闭? [关闭]
【发布时间】:2011-05-26 13:32:18
【问题描述】:

我对 unix 很陌生。如何检查某个特定端口现在是空闲的还是使用的?

【问题讨论】:

    标签: unix


    【解决方案1】:
    netstat -ano|grep 443|grep LISTEN
    

    会告诉您进程是否正在侦听端口 443(不过,您可能需要将 LISTEN 替换为您的语言中的字符串,具体取决于您的系统设置)。

    【讨论】:

    • 请注意,在进行此调用后,您可以使用 $?检查 grep 是否匹配...例如“echo $?”在此之后将立即输出 0 用于端口打开的情况和 1 用于端口未打开的情况。您可能会发现此值更适合作为较大脚本的一部分。
    • 当我需要一个干净的 0/1 输出时,我使用这个:netstat -ano | grep ':443\s' | if grep -q LISTEN; then echo 0; else echo 1; fi。这里:\s用于分隔443和4430等端口号,-q用于保持grep安静
    【解决方案2】:

    尝试(可能以 root 身份)

    lsof -i -P
    

    然后 grep 输出您正在寻找的端口。

    例如检查端口 80 做

    lsof -i -P | grep :80
    

    【讨论】:

      猜你喜欢
      • 2012-06-09
      • 1970-01-01
      • 1970-01-01
      • 2018-11-09
      • 2015-05-11
      • 2011-10-20
      • 2013-03-11
      • 1970-01-01
      • 2021-06-17
      相关资源
      最近更新 更多