lsof命令用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP)。找回/恢复删除的文件。是十分方便的系统监视工具,因为lsof命令需要访问核心内存和各种文件,所以需要root用户执行。
lsof 列出打开的文件
lsof - list open files
例子:
root@liujie-desktop:/tftp-1.1# lsof tftpd | awk '{ print $2 }'
PID
4901
root@liujie-desktop:/tftp-1.1# lsof tftpd | awk '{ print $2 }' | sed -n '2p'
4901
root@liujie-desktop:/tftp-1.1# lsof -i:69
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
tftpd 4901 root 4u IPv4 66885 0t0 UDP *:tftp
server 5021 root 3u IPv4 69142 0t0 TCP *:69 (LISTEN)
pidof 找出当前运行程序的进程ID
pidof -- find the process ID of a running program.
root@liujie-desktop:/tftp-1.1# pidof tftpd
4901
pgrep 是通过程序的名字来查询进程的工具,一般是用来判断程序是否正在运行。
pgrep, pkill - look up or signal processes based on name and other
attributes
[root@localhost ~]# pidof lighttpd
1908
[root@localhost ~]# pgrep -l httpd
1908 lighttpd