【问题标题】:Find process by port按端口查找进程
【发布时间】:2017-02-09 20:26:27
【问题描述】:

我一直在尝试列出特定端口上超过 8 分钟的 PID。

for each in $(find /proc -maxdepth 1 -user root -mmin +8 -exec basename {} \;); do echo $each; done

我当前的代码将转储所有超过 8 分钟的进程,但我在 find 中找不到任何有关端口标志的文档。任何想法将不胜感激。

【问题讨论】:

    标签: shell centos


    【解决方案1】:

    我从不同的方向解决了这个问题,并提出了以下建议:

    for i in $(pgrep -f "server.php"); do
        pidtime=$(stat -c '%Y' /proc/$i)
        now=$(date +%s)
        ((now - pidtime >= 6)) && {
          kill $i;
          sleep 1;
          kill &>/dev/null -9 $i;
        }
    done
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-27
      • 1970-01-01
      • 1970-01-01
      • 2013-04-03
      • 1970-01-01
      • 1970-01-01
      • 2022-11-14
      相关资源
      最近更新 更多