0

我正在尝试获取已被定义范围内的 php 服务占用的端口列表。

这似乎工作正常..

lsof | grep -E 'php.+55000.+LISTEN'
php       6446  user   11u     IPv4             694089      0t0        TCP *:55000 (LISTEN)

但是当我将其设为范围查询时,它似乎没有给出正确的结果

lsof | grep -E 'php.+[55000-55001].+LISTEN'
php       6446  user   11u     IPv4             694089      0t0        TCP *:55000 (LISTEN)
php       6446  user   12u     IPv4             694090      0t0        TCP *:51000 (LISTEN)

请帮忙,我的正则表达式技能是业余的。

4

2 回答 2

2

您正在寻找的是 lsof -i选项。在手册页上它说:

To list all files using any protocol on ports 513, 514, or 515 of host wonderland.cc.purdue.edu, use:

       lsof -i @wonderland.cc.purdue.edu:513-515

因此,对于您的情况,您可以从以下内容开始:

lsof -i :55000-55001

而不是使用所有你需要的 grep 来得到你的答案。

问候

于 2012-11-27T13:40:40.717 回答
0

这对你有用吗?(端口范围 55000-60000)

lsof|awk '$2>55000 && $2<60000 && /php/ && /LISTEN/'
于 2012-11-27T13:40:06.853 回答