【问题标题】:netstat: parse (awk?) output to return "Program name" not "PID/Program name"netstat:解析(awk?)输出以返回“程序名称”而不是“PID/程序名称”
【发布时间】:2015-06-08 17:00:15
【问题描述】:

UBUNTU 14.04

netstat -p 在同一列中输出两个“PID/程序名称”。我只想要该列中的“程序名称”。最简单的方法是什么?

实际输出

root@neo4j1:~# netstat -tlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 *:ssh                   *:*                     LISTEN      1020/sshd
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      1020/sshd
tcp6       0      0 [::]:7473               [::]:*                  LISTEN      31380/java
tcp6       0      0 [::]:7474               [::]:*                  LISTEN      31380/java

期望的输出

root@neo4j1:~# netstat -tlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       Program name
tcp        0      0 *:ssh                   *:*                     LISTEN      sshd
tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      sshd
tcp6       0      0 [::]:7473               [::]:*                  LISTEN      java
tcp6       0      0 [::]:7474               [::]:*                  LISTEN      java

【问题讨论】:

    标签: bash ubuntu awk netstat


    【解决方案1】:

    试试

    netstat -tlp | sed 's,[0-9]\+/,,'
    

    【讨论】:

      【解决方案2】:

      使用 Sed 分组:

      netstat -tlp | sed 's/\(^.*\)\( [0-9]*\/\)\(.*$\)/\1\3/g'
      

      虽然 RTLinuxSW 的回答要简洁得多。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-11-27
        • 2019-08-08
        • 2021-09-21
        • 1970-01-01
        • 2014-02-12
        • 1970-01-01
        • 2013-12-31
        相关资源
        最近更新 更多