netstat:parse(awk?)输出返回"程序名称"不是" PID /程序名称"

时间:2015-06-08 17:00:16

标签: bash ubuntu awk netstat

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

2 个答案:

答案 0 :(得分:1)

尝试

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

答案 1 :(得分:0)

使用Sed的分组:

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

虽然RTLinuxSW的答案更清晰。