第6章 Linux文件定位命令

Linux系统中查找文件的方法不同于Windows系统,在Windows系统中查找文件的方法比较容易,只要在桌面上点击“开始”-“搜索”中就能按照各种方式进行查找,对于Linux新手来讲,在Linux系统中查找一个文件比较空难,它不像Windows那样方便,在Linux中通常使用命令来查找文件,常见查找文件的命令有locatewhichwhereisfind等。

locate

locate命令用来查找文件或目录

locate命令要比其他查找文件命令(列如find)快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/mlocate/mlocate.db

/var/lib/mlocate/mlocate.db这个数据库中含有本地所有文件信息.Linux系统自动创建这个数据库,并且每天自动更新一次,因此,我们在用locate查找文件时,有时候会找到已经被删除的数据.为了避免这种情况,可以使用locate之前,先使用updatedb命令更新数据库

locate 命令参数 文件/目录

常用命令参数如下:

  1. -c, --count 只输出找到的数量;
  2. -d, --database DBPATH 使用DBPATH指定的数据库,而不是默认数据库/var/lib/mlocate/mlocate.db;
  3. -i, --ignore-case 忽略大小写;
  4. -q, --quiet 安静模式,不会显示任何错误讯息;
  5. -e, --existing 只显示当前存在的文件条目;

列如 locate -c passwd

搜索包含passwd字母的文件或目录的总个数

which

which命令用于查找并显示你要查找的命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录,which指令会在环境变量$PATH设置的目录里查找符合条件的文件.也就是说,使用which命令就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令.

whichshell内建命令,内建命令要比系统论命令有比较高的执行效率。

which 命令

列如 which passwd

预览大图

 

可以查看passwd命令是放在/usr/bin目录下

whereis

whereis命令用来定位指令的二进制程序,源代码文件和man手册页等相关文件的路径

whereis 命令参数 文件名

常用命令参数如下:

  1. -b:只查找二进制文件;
  2. -B<目录>:只在设置的目录下查找二进制文件;
  3. -m:只查找说明文件;
  4. -M<目录>:只在设置的目录下查找说明文件;
  5. -s:只查找原始代码文件;
  6. -S<目录>只在设置的目录下查找原始代码文件;

列如 whereis -m useradd

使用whereis命令查找useradd命令的说明文件位置

find

find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

find 查找目录 查找参数 查找内容

常用查找参数如下:

  1. -amin<+|-分钟>:查找在指定时间曾被存取过的文件或目录,单位以分钟计算;
  2. -atime<+|-24小时数>:查找在指定时间曾被存取过的文件或目录,单位以24小时计算;
  3. -cmin<+|-分钟>:查找在指定时间之时被更改过的文件或目录;
  4. -ctime<+|-24小时数>:查找在指定时间之时被更改的文件或目录,单位以24小时计算;
  5. -mmin<+|-分钟>:查找在指定时间曾被更改过的文件或目录,单位以分钟计算;
  6. -mtime<+|-24小时数>:查找在指定时间曾被更改过的文件或目录,单位以24小时计算;
  7. -depth:从指定目录下最深层的子目录开始查找;
  8. -exec<执行指令>:假设find指令的回传值为True,就执行该指令;
  9. -follow:排除符号连接;
  10. -gid<群组识别码>:查找符合指定群组识别码的文件或目录;
  11. -group<群组名称>:查找符合指定群组名称的文件或目录;
  12. -uid<用户识别码>:查找符合指定的用户识别码的文件或目录;
  13. -user<拥有者名称>:查找符和指定的拥有者名称的文件或目录;
  14. -name<范本样式>:指定字符串作为寻找文件或目录的范本样式;
  15. -iname<范本样式>:此参数的效果和指定“-name”参数类似,但忽略字符大小写的差别;
  16. -inum<inode编号>:查找符合指定的inode编号的文件或目录;
  17. -newer<参考文件或目录>:查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录;
  18. -size<+|-|=文件大小>:查找符合指定的文件大小的文件;
  19. -type<文件类型>:只寻找符合指定的文件类型的文件;
  20. -a:是前后条件都要满足;
  21. -o :是满足一个条件就好;
  1. +:表示大于设置值的文件;
  2. - :表示小于设置值的文件;
  3. = :表示等于设置值的文件;

列如 find /root -size +1M

使用find查找/root目录下大于1M的文件

find -name "my*" -a -type d

使用find命令查找当前目录中所有以my开头的目录

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: top命令是一个在Linux系统中常用的性能分析工具,可以观察系统的CPU、内存、进程等使用情况。top命令可以实时更新系统状态,通过按键可以进行排序、筛选和操作等多种操作,可帮助用户分析系统性能问题。 ### 回答2: top命令是一种用于系统监控的命令,可以用于实时显示出系统中各个进程的状态以及系统的一些基本信息,比如CPU的使用率、内存的使用情况等。下面我们来详细解析一下这个命令的使用方式和输出结果。 1. top命令的基本使用 在Linux系统中,使用top命令非常简单,只需要在终端中输入top即可。默认情况下,top命令会以交互方式运行,并会实时显示系统的运行情况。用户可以通过按键来切换不同的显示模式或者排序方式。top命令常用的按键如下表所示: 按键 | 功能 --- | --- h | 显示帮助信息 k | 杀死某个进程 q | 退出top命令 r | 修改某个进程的优先级 s | 修改top命令的刷新时间 1 | 显示CPU的详细信息 M | 根据内存使用情况排序 P | 根据CPU占用率排序 2. top命令的输出结果解析 top命令的输出结果包括了很多列,下面我们来逐一解释一下这些列的含义。 第1列:进程ID(PID) 这一列显示了系统中每个进程的唯一标识符。用户可以根据PID来杀死某个进程。 第2列:进程的所有者(USER) 这一列显示了哪个用户启动了这个进程。如果这个进程是由root用户启动的,那么这一列会显示为root。 第3列:进程的优先级(PR) 这一列显示了进程的优先级。优先级的数值越小表示优先级越高,因为Linux系统在为进程分配CPU时间片的时候会优先考虑优先级高的进程。 第4列:进程所占用的CPU时间的百分比(%CPU) 这一列显示了进程所占用的CPU时间的百分比。如果一个进程的%CPU大于100%,那么表示这个进程正在使用多个CPU核心。 第5列:进程所占用的内存百分比(%MEM) 这一列显示了进程所占用的内存的百分比。如果一个进程的%MEM非常高,那么表示这个进程可能有内存泄漏的问题。 第6列:进程所占用的虚拟内存的大小(VSZ) 这一列显示了进程所占用的虚拟内存的大小。虚拟内存是指进程可以使用的所有内存,包括实际物理内存和交换区等。 第7列:进程所占用的物理内存的大小(RSS) 这一列显示了进程所占用的物理内存的大小。物理内存是指进程实际使用的内存,不包括交换区等。 第8列:状态(STAT) 这一列显示了进程的状态。常见的状态包括: 状态 | 含义 --- | --- R | 运行中 S | 等待中 T | 暂停或停止 Z | 僵尸进程 第9列:启动时间(START) 这一列显示了进程启动的时间。 第10列:命令行(COMMAND) 这一列显示了进程启动时的命令行参数,用来描述进程在运行时执行的具体命令和参数。 综上所述,top命令是一种非常强大的系统监控工具,可以方便地实时查看系统中各个进程的状态以及系统的一些基本信息,对于系统管理员来说非常有用。 ### 回答3: Linux中的top命令是一个使用频率很高的性能分析工具,它可以实时动态地查看系统资源的使用情况,包括CPU占用率、内存占用率、进程情况、各项系统负载等等。本文将为大家详解top命令的相关用法和参数。 一、top命令的语法结构 top命令的基本语法格式如下: $ top [参数] top命令带的参数很多,可以根据不同的需求使用不同的参数。 二、 top命令的参数详解 以下是常用的top命令参数说明: 1. -d:表示两次刷新之间的时间间隔,默认为3秒。 2. -p:表示指定要监视的进程ID列表或要显示的进程名。 3. -b:表示以批处理模式运行,不需要用户交互,直接将结果输出到标准输出流中。 4. -n:表示要刷新的次数。默认情况下,top命令会无限期地刷新,直到用户手动停止它。 5. -u:表示指定要监视的用户ID列表或用户名。 三、 top命令的输出内容说明 top命令的输出结果分为两部分,一部分是进程列表,另一部分是系统的总体信息。下面我们分别进行介绍。 1. 进程列表 进程列表是top命令最重要的部分,它展示了系统中正在运行的所有进程的相关信息。由于进程列表内容很多,我们只选取几个常用的指标进行说明。 (1) PID:即进程ID,表示该进程在系统中的唯一标识。 (2) PR:表示进程的优先级。 (3) SHR:表示进程使用的共享内存大小。 (4) VIRT:表示进程使用的虚拟内存大小。 (5) RES:表示进程使用的实际物理内存大小。 (6) %CPU:表示进程使用CPU的利用率。 (7) %MEM:表示进程使用内存的利用率。 (8) COMMAND:表示进程的命令名称。 2. 系统总体信息 系统总体信息是指显示服务质量、CPU、内存、交换空间和IO等系统性能数据的一部分。下面为大家介绍几个常用的指标。 (1) uptime:表示系统启动的时间和当前系统时间之间的差距。 (2) load average:表示系统在过去1分钟,5分钟和15分钟内所有进程的平均负载。 (3) Tasks:表示当前系统有多少个进程正在运行。 (4) %CPU:表示整个系统的CPU使用情况。 (5) %MEM:表示整个系统的内存使用情况。 (6) Swap:表示交换空间使用量的情况。 (7) IO:表示系统的总体输入输出情况。 四、 top命令的常用操作 在top命令中,用户可以使用以下几个常用操作: 1. P:按照进程的CPU占用率进行排序。 2. M:按照进程的内存使用率进行排序。 3. T:按照进程的执行时间进行排序。 4. k:杀死一个进程。输入k后,命令会提示要求用户输入需要杀死的进程的PID号。 5. q:退出top命令。 五、 top命令的注意事项 在使用top命令时需要注意以下几个问题: 1. 在top命令中如果一个进程的CPU占用率变得非常高(比如突然占用了90%以上的CPU资源),那么就很有可能说明这个进程正在执行某些不正常的操作。 2. 在top命令中,用户可以使用数字键 1 来查看每个CPU的CPU占用率和负载。这对于监视多核CPU系统来说非常有用。 3. 在批处理模式下,top命令可以输出到文件中,以便后续的分析。 总之,top命令Linux系统管理员和开发人员常用的一个性能分析工具,它通过实时监控和分析系统进程的CPU、内存、IO等方面的情况,为用户提供了一个实时的、全面的系统信息展示平台,让用户能够快速地定位到系统存在的问题,并采取适当的措施予以解决,对于维护系统运行状态和优化系统性能非常有帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值