プロセスが実行されているポートを探すLinuxコマンドは何ですか?

プロセスが実行されているポートを探すLinuxコマンドは何ですか?

お持ちですか?きれいLinuxプロセス/サービスが実行/受信しているポートを確認する方法は?

fuser、、netcatなどlsofはすべてその情報を見つける方法ですが、同時にさまざまな情報を返すことがわかります。たとえば、 netstat -ltnp | grep -w process_name"成功しますが返されます。

tcp        0      0 127.0.0.1:1234      0.0.0.0:*               LISTEN      4880/process
tcp6       0      0 ::1:                :::*                    LISTEN      4880/process

また、特定のポートで実行されているプロセスではなく、プロセスが実行されているポートが必要です。

magic_command -abcd process_name ポート番号を返します。それ以外の場合は何も返されません。

PS:私は明らかなリンクを確認しました。https://ostechnix.com/how-to-find-which-service-is-listening-on-a-pspecial-port/

ベストアンサー1

lsofこの目的に使用できます。 Magic_commandは次のとおりです。

sudo lsof -i -P -n | grep LISTEN | grep <your_process_name>

エイリアスでラップできます。

alias magic="sudo lsof -i -P -n | grep LISTEN | grep "

出力例:

$ magic httpd
httpd      9438           apache    3u  IPv4 2087313137      0t0  TCP *:80 (LISTEN)
httpd      9438           apache    4u  IPv4 2087321333      0t0  TCP *:49383 (LISTEN)
httpd      9438           apache    5u  IPv4 2087321335      0t0  TCP *:49384 (LISTEN)
httpd      9438           apache    6u  IPv4 2087345343      0t0  TCP *:443 (LISTEN)
httpd     23940             root    3u  IPv4 2087313137      0t0  TCP *:80 (LISTEN)
httpd     23940             root    4u  IPv4 2087321333      0t0  TCP *:49383 (LISTEN)
httpd     23940             root    5u  IPv4 2087321335      0t0  TCP *:49384 (LISTEN)
httpd     23940             root    6u  IPv4 2087345343      0t0  TCP *:443 (LISTEN)

ポート以外に本当に興味がない場合、一部の出力処理は無関係な情報をブロックします。

$ magic httpd | awk -F: '{print $2}' | cut -d\  -f1 | sort -un
80
443
49383
49384

おすすめ記事