【问题标题】:combine grep with the watch and netstat command将 grep 与 watch 和 netstat 命令结合使用
【发布时间】:2012-09-18 19:06:21
【问题描述】:

红帽企业 Linux 服务器版本 5.4 (Tikanga) 2.6.18-164.el5

我正在尝试将 watch 命令与 netstat 结合使用来查看使用某些端口的 2 个程序。

但是,我在下面使用的命令对这两个词都不起作用:

watch -n1 "netstat -upnlt | grep gateway\|MultiMedia"

这是对两个程序名称进行 grep 的正确方法吗?

如果我用一个没问题,但两个一起用就不行了。

【问题讨论】:

    标签: grep watch


    【解决方案1】:

    对于您需要的 grep:

    "grep gateway\|MultiMedia"
    

    所以不妨试试:

    watch -n1 'netstat -upnlt | grep "gateway\|MultiMedia"'
    

    【讨论】:

    • 以及如何列出输出?
    【解决方案2】:

    还有一种新的做事方式... grep -E 很好且可移植(或者 egrep,这对于 grep -E 在 linux&bsd 上非常快捷),因此您不必逃避引用。从手册页:

    -E Interpret pattern as an extended regular expression (i.e. force grep to behave as egrep).

    所以...

    watch "netstat -upnlt | grep -E 'gateway|multimedia'"

    watch "netstat -upnlt | egrep 'gateway|multimedia'"

    【讨论】:

      【解决方案3】:

      我在监控 ssh 连接时遇到了类似的问题。

      > netstat -tulpan|grep ssh
      tcp        0      0 192.168.2.52:58072     192.168.2.1:22          ESTABLISHED 31447/ssh 
      

      但是watch -n 1 'netstat -tulpan|grep ssh' 没有显示输出(除了来自手表的消息)。 如果我将其更改为watch -n 1 'netstat -tulpan|grep ":22"',我会得到所需的输出行。当 netstat 通过 watch 运行时,似乎忽略了 -p 选项。奇怪。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-07-15
        • 2021-04-18
        • 1970-01-01
        • 1970-01-01
        • 2021-08-17
        • 1970-01-01
        • 1970-01-01
        • 2013-11-16
        相关资源
        最近更新 更多