linux查询已打开的文件或已经执行进程打开的文件

1.fuser

#fuser [-ki] [-singal] file/dir
参数:
-k:找出使用文件/目录的PID,并试图将sigkill信号给PID
-i:必须与-k配合在删除PID之前会先要求用户确认
-sigal:如 -1  -15 等,若不添加的话,默认是sigkill(-9)
范例一:找出当前目录使用的PID
#fuser .
 
2.lsof 查出某个进程打开或使用的文件或设备
参数:
-a:需要多项数据“同时成立”才显示出结果的情况
-U:仅列出类UNIX系统的套接字文件类型
-u:后面接用户名,列出该用户相关进程所打开的文件
+d:后面接目录,即找出某个目录下已经打开的文件
 
范例一:列出当前系统上所有已经打开的文件和设备
#lsof
 
范例二:仅针对root列出所有进程打开的套接字文件
#lsof  -u root  -a -U
 
范例三:请列出当前系统上所有启动的外部设备
#lsof  +d /dev
 
范例四:显示root的bash进程所有打开的文件
#lsof -u root |grep bash
 
3.pidof
#pidof  [-sx] program_name
参数:
-s:仅列出一个pid而不列出所有的pid
-x:同时列出该程序名可能的ppid进程的pid
 
范例一:列出当前系统init的pid
#pidof init
 
范例二:找出bash即以ppid的几个主要的pid
#pidof -x bash

猜你喜欢

转载自www.cnblogs.com/hopelooking/p/9163182.html
今日推荐