查询已打开文件或已执行程序打开的文件
阅读数:103 评论数:0
跳转到新版页面分类
Linux
正文
一、fuser
通过文件(或文件系统)找出正在使用该文件的程序
1、基本用法
fuser [-umv] [-k [i] [-signal] ] file/dir
-u:在进程号旁边显示其拥有者的用户名。
-m:显示指定挂载点的所有进程。
-v:详细模式,显示被访问文件的详细信息。
-k:杀死访问指定文件的所有进程。
-i:必须与-k配合,在删除 PID之前先询问用户
-n:后面跟随 space, file, udp, 或 tcp 等,用于指定要检查的名称空间
-4:只查看 IPv4 套接字。
-6:只查看 IPv6 套接字。
2、查看某个端口被哪些进程使用:
fuser -n tcp [端口号]
3、查看某个目录及其子目录下所有文件被哪些进程使用:
fuser -vm [目录路径]
4、示例
(1)查看并杀死使用 /var/lib/dpkg/lock
文件的进程:
fuser -vki /var/lib/dpkg/lock
(2)查看使用某个挂载点 /mnt/mydisk
的所有进程:
fuser -vm /mnt/mydisk
二、lsof
列出被进程所打开的文件名
在 Linux 中,lsof
命令是 "list open files" 的缩写,这是一个非常强大的命令行工具,用于列出系统上当前打开的文件。由于在 Unix 和 Linux 中,几乎一切都是文件(包括硬件设备、目录、套接字等),lsof
提供了一种查看哪个进程打开了哪个文件的方法。
1、基本用法
(1)列出所有打开的文件:
lsof
(2)列出特定进程打开的文件:
lsof -p [进程号]
(3)列出特定用户打开的文件:
lsof -u [用户名]
(4)列出所有打开的网络连接:
lsof -i
(5)列出所有 TCP 或 UDP 端口的网络连接:
lsof -i tcp
lsof -i udp
(6)列出监听某个特定端口的进程:
lsof -i :[端口号]
(7)列出某个目录下被打开的文件:
lsof +D [目录路径]
(8)列出某个文件被哪些进程打开:
lsof [文件路径]
2、选项和参数
lsof
提供了许多选项和参数来过滤和显示结果:
-t
:仅输出进程标识(PID),常用于管道传递给其他命令。-u
:后面跟用户名,用于列出该用户打开的文件。-c
:后面跟进程名的前几个字符,用于列出匹配名称的进程打开的文件。-a
:多条件查询时,用于逻辑与操作。-d
:后面跟文件描述符,用于列出使用该文件描述符的进程。-n
:不将 IP 地址转换为主机名,加快命令执行速度。-P
:不将端口号转换为端口名。
三、pidof
在 Linux 中,pidof
命令是用来查询一个或多个正在运行的程序的进程ID(PID)的。它通常用于脚本中,以便自动获取某个特定程序的 PID。
1、基本用法
pidof [-sx] program_name
-s:如果有多个进程实例在运行,只返回一个 PID。
-x:同时列出该program name可能PPID的那个进程PID
-o: 排除特定的 PID,常用于排除脚本自身的 PID。
2、示例
(1)获取除了当前脚本之外的 bash
进程的 PID
pidof -o $$ bash
相关推荐
一、概述
lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。
二、语
一、概述
1、为什么Linus不使用GPLv3
在 PC 上,只要你得到了某个程序的源代码,就可以自行编译生成二进制程序,然后替换掉原有的二进制程序,你的程序自由很容易得到保证。然而 iPod、iPh
说明:这种方式只是用于方便阅读代码,因为可以在源代间快速索引跳跃。但是最后可能会有一些warning,可以不必关心,如果是强迫症,可以使用下面这种方式来去掉。
一、概述
在Linux系统中,/usr/bin和/usr/local/bin是两个常见的目录,用于存放可执行文件(二进制文件)。
很多应用都安装在/usr/local下面,先看一下automake工具
一、概述
vmstat命令是最常见的Linux/Unix监控工具,可以监控给定时间间隔服务器的CPU使用率、内存使用、IO情况。相比top命令,可以查看到整个机器的CPU、内存、IO的使用情况,而
一、概述
sar,System Activity Reporter。是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁
一、简介
简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
二、使用方法
1、基本语法
awk '条件类型1 {动作1} 条件类型2{动作2} ...
一、概述
列出目标目录中所有的子目录和文件。
二、 语法
ls [选项] [目录名]
-a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件
-A 同-a,但不列出“.”(表示当前目录)
一、概述
cd全称是change directory,用于切换当前工作目录。
注意的是,cd命令是一个内建命令,它是由 shell 提供的。因此,不同的 shell 可能会有一些差异,但基本的用法和功
一、概述
全称为print working directory,查看”当前工作目录“的完整路径,一般情况下不带任何参数
二、语法
pwd [选项]
-L
即logical,逻辑路径
-P
即