【问题标题】:lsof print numeric portslsof 打印数字端口
【发布时间】:2016-03-06 01:52:13
【问题描述】:

如何让lsof 生成数字端口信息,而不是尝试将端口解析为服务名称?

例如,我希望TCP *:http (LISTEN) 给我TCP *:80 (LISTEN) 事实上,如果可能的话,我再也不想在lsof 打印输出中看到另一个服务名称。因此,如果有办法将数字端口设为默认值,我也想了解如何做到这一点。

【问题讨论】:

    标签: unix tcp ports lsof


    【解决方案1】:

    运行lsof -P。根据man lsof-P 禁止将端口号转换为网络文件的端口名称。禁止转换可能会使 lsof 运行得更快一些。当端口名称查找无法正常工作时,它也很有用。”

    【讨论】:

    • 来自手册页:-n:禁止将网络号转换为网络文件的主机名。 -P:禁止将端口号转换为网络文件的端口名称。
    【解决方案2】:

    有时方便的是:

    lsof -Pi
    

    当我尝试 losf -iP 时,它给了我一些垃圾,所以请确保 P 优先。


    附带说明:lsof -3.14 将提供相同的垃圾,请勿尝试。

    【讨论】:

    • 奇怪的是顺序很重要,即使在 macOS 的 lsof 上也是如此。
    • 顺序无关紧要。从 man "-i [i] 选择任何 Internet 地址与 i 中指定的地址匹配的文件列表",因此 -iP 表示选择与 P 匹配的 Internet 地址。另一件事是 lsof -P -i 用作 lsof -i -P
    猜你喜欢
    • 1970-01-01
    • 2022-02-17
    • 2013-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-02
    • 2018-04-10
    相关资源
    最近更新 更多