xuxujing 2012-04-13
方法一
1.通过lsof命令查看PID
1.1、简单而实用的查看
[root@testproc]#lsof-i:8080
1.2、ipv4/ipv6
[root@testproc]#lsof-Pnl+M-i4(i6)
也可以使用:
[root@testproc]#lsof-Pnl+M-i4(i6)|grep8080
lsof(listopenfiles)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。
lsof命令参数解释
1)-P:这个选项约束着网络文件的端口号到端口名称的转换。约束转换可以使lsof运行得更快一些。在端口名称的查找不能奏效时,这是很有用的。
2)-n:这个选项约束着网络文件的端口号到主机名称的转换。约束转换可以使lsof的运行更快一些。在主机名称的查找不能奏效时,它非常有用。
3)-l:这个选项约束着用户ID号到登录名的转换。在登录名的查找不正确或很慢时,这个选项就很有用。
4)+M:此选项支持本地TCP和UDP端口映射程序的注册报告。
5)-i4:仅列示IPv4协议下的端口。
6)-i6:仅列示IPv6协议下的端口。
lsof常用的参数列表:
lsoffilename显示打开指定文件的所有进程
lsof-a表示两个参数都必须满足时才显示结果
lsof-cstring显示COMMAND列中包含指定字符的进程所有打开的文件
lsof-uusername显示所属user进程打开的文件
lsof-ggid显示归属gid的进程情况
lsof+d/DIR/显示目录下被进程打开的文件
lsof+D/DIR/同上,但是会搜索目录下的所有目录,时间相对较长
lsof-dFD显示指定文件描述符的进程
lsof-n不将IP转换为hostname,缺省是不加上-n参数
lsof-i用以显示符合条件的进程情况
lsof-i[46][protocol][@hostname|hostaddr][:service|port]
46-->IPv4orIPv6
protocol-->TCPorUDP
hostname-->Internethostname
hostaddr-->IPv4地址
service-->/etc/service中的servicename(可以不只一个)
port-->端口号(可以不只一个)
方法二
1.使用netstat查看进程PID
[root@test~]#netstat-anp|grep8080
2.使用ps查看进程情况
[root@test12886]#ps-ef|grep8080