花瓣小跑 发表于 2024-9-8 05:39:54

linux查看进程使用的端标语信息

在 Linux 体系中,可以使用多种命令来查看进程使用的服务器端标语。以下是一些常见的方法:
ss(Socket Statistics)命令
参数如下:


[*]-h, --help:显示帮助信息。
[*]-V, --version:输出版本信息。
[*]-n, --numeric:不解析服务名称。
[*]-r, --resolve:解析主机名。
[*]-a, --all:显示全部套接字(sockets)。
[*]-l, --listening:显示监听状态的套接字(sockets)。
[*]-o, --options:显示计时器信息。
[*]-e, --extended:显示详细的套接字(sockets)信息。
[*]-m, --memory:显示套接字(socket)的内存使用情况。
[*]-p, --processes:显示使用套接字(socket)的进程。
[*]-i, --info:显示 TCP 内部信息。
[*]-s, --summary:显示套接字(socket)使用概况。
[*]-4, --ipv4:仅显示 IPv4 的套接字(sockets)。
[*]-6, --ipv6:仅显示 IPv6 的套接字(sockets)。
[*]-0, --packet:显示 PACKET 套接字(socket)。
[*]-t, --tcp:仅显示 TCP 套接字(sockets)。
[*]-u, --udp:仅显示 UDP 套接字(sockets)。
[*]-d, --dccp:仅显示 DCCP 套接字(sockets)。
[*]-w, --raw:仅显示 RAW 套接字(sockets)。
[*]-x, --unix:仅显示 Unix 套接字(sockets)。
[*]-f, --family=FAMILY:显示指定范例的套接字(sockets),FAMILY 可选范例包罗 unix、inet、inet6、link、netlink 等。
[*]-A, --query=QUERY, --socket=QUERY:查看某种范例的套接字,QUERY 可以是all、inet、tcp、udp、raw、unix、packet、netlink等,也可以是它们的组合,例如tcp,udp。
[*]-D, --diag=FILE:将原始 TCP 套接字(sockets)信息转储到文件。
[*]-F, --filter=FILE:从文件中读取过滤信息,用于过滤某种状态的毗连,FILTER 的格式为(state TCP-STATE) (EXPRESSION)。

netstat命令
参数如下:


[*]-a 或 --all:显示全部连线中的 Socket。
[*]-A<网络范例> 或 --<网络范例>:列出该网络范例连线中的相关地点。
[*]-c 或 --continuous:持续列出网络状态。
[*]-C 或 --cache:显示路由器设置的快取信息。
[*]-e 或 --extend:显示网络其他相关信息。
[*]-F 或 --fib:显示 FIB。
[*]-F 或 --fib:显示 FIB。
[*]-g 或 --groups:显示多重广播功能群组组员名单。
[*]-h 或 --help:在线帮助。
[*]-i 或 --interfaces:显示网络界面信息表单。
[*]-l 或 --listening:显示监控中的服务器的 Socket。
[*]-M 或 --masquerade:显示伪装的网络连线。
[*]-n 或 --numeric:直接使用 IP 地点,而不通过域名服务器。
[*]-N 或 --netlink 或 --symbolic:显示网络硬件外围设备的符号毗连名称。
[*]-o 或 --timers:显示计时器。
[*]-p 或 --programs:显示正在使用 Socket 的程序识别码和程序名称。
[*]-r 或 --route:显示 Routing Table。
[*]-s 或 --statistics:按照每个协议来分类举行统计,默认显示 IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计信息。
[*]-t 或 --tcp:显示 TCP 传输协议的连线状况。
[*]-u 或 --udp:显示 UDP 传输协议的连线状况。
[*]-v 或 --verbose:显示指令实行过程。
[*]-V 或 --version:显示版本信息。
[*]-w 或 --raw:显示 RAW 传输协议的连线状况。
[*]-x 或 --unix:此参数的效果和指定-A unix参数雷同。
[*]--ip 或 --inet:此参数的效果和指定-A inet参数雷同。

lsof(list open files)命令
用于查看体系中打开的文件和相关进程信息。以下是一些常见的参数:


[*] -a:表示两个或多个条件都必须满足时才显示效果。例如,lsof -a -u root -i tcp 将列出属于 root 用户且使用 TCP 协议的进程所打开的文件。
[*] -c <进程名>:列出指定进程所打开的文件。
[*] -g <GID>:列出 GID 号进程的详情。
[*] -d <文件形貌符>:列出占用该文件形貌符的进程。可以指定多个文件形貌符,如 -d 1 -d 2。
[*] -d <目录>:列出目录下被打开的文件。
[*] +D <目录>:递归列出目录下被打开的文件,但搜索时间相对较长。
[*] -n:不将 IP 转换为 hostname,默认情况下是转换的。
[*] -i <条件>:列出符合条件的进程。条件的格式通常为 <协议>:<端口> 或 @<主机名|IP 地点>,例如 -i tcp:80 表示列出使用 TCP 协议且端口为 80 的进程,-i @127.0.0.1 表示列出与本地主机(127.0.0.1)相关的进程。
[*] -p <进程号>:列出指定进程号所打开的文件。
[*] -u <用户名>:列出该用户相关进程所打开的文件。
[*] -U:仅列出体系 socket 文件范例。
[*] -h:显示帮助信息。
[*] -v:显示版本信息。

案例
netstat -tunlp
ss -tunlp
该命令会显示全部的 TCP 和 UDP 毗连以及对应的进程信息,包罗监听的端口和进程PID。

lsof -i :<port_number>
例如,lsof -i :80 会显示使用 80 端口的进程信息。

查看当前全部python程序创建的毗连信息
ss -tunap | grep -E "$(ps -aux | grep python | grep -v 'grep' | awk '{print $2}' | paste -sd '|' -)" 查看当前全部python程序创建服务器信息
ss -tunlp
| grep -E "$(ps -aux | grep python | grep -v 'grep' | awk '{print $2}' | paste -sd '|' -)"

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: linux查看进程使用的端标语信息