我想用python识别特定进程ID的侦听端口(在* nix系统上)。
在bash中,我会:netstat -tulpn | grep 12345 | awk '{print $4}' | cut -d':' -f2
,其中12345
是感兴趣的过程。
我接受了命令,并尝试将其与check_output
:
>>> from subprocess import check_output
>>> (check_output("netstat -tulpn | grep 12345 | awk '{print $4}' | cut -d':' -f2", shell=True)).decode("utf-8").rstrip()
'54321'
这是一个非常静止的,真的不是pythonic。
是否有正确的方法用Python识别给定进程的侦听端口?
我Popen
对同一个脚本感兴趣的过程,如果这会产生影响。
编辑:如果可能,我希望避免导入第三方函数,例如psutil
。