|
|
51CTO旗下网站
|
|
移动端

Linux系统上使用find命令查找文件的N种案例

通过本文,你应该对find命令怎么用有所了解了吧?这是Linux运维中最常用的命令了,一定要学习使用。

作者:Linux学习教程来源:智传网优云课堂|2019-09-12 08:21

1. 前言

本文主要讲解在Linux系统上如何使用find命令。

2. find命令的使用方法

要开始搜索整个硬盘,您需要输入以下内容:

  1. find / 

但是,如果您想开始搜索当前所在的文件夹,那么可以使用find命令以下语法:

  1. find . 

当您想在整个硬盘中按名称搜索文件时,请使用find命令以下语法:

假设你要搜索的文件名为filename

  1. find / -name filename 

find命令的第一部分显然是单词find。

第二部分是从哪里开始搜索。即指定目录,它会自动搜索指定目录里的子目录

第三部分是一个表达式,它决定要查找什么。

最后一部分是要找的文件名。

3. find命令搜索位置的快捷方式

find之后的第一个参数是要搜索的位置。虽然可以指定特定的目录,但是大多数人使用元字符作为替代。使用这个命令的三个元字符包括:

  • 句点:指定当前文件夹和所有嵌套文件夹
  • 左斜杠/:指定整个文件系统
  • 波浪符号~:指定活动用户的主目录
  • 提示:搜索整个文件系统可能会产生许多访问拒绝错误。一般的用户账号都会遇到权限的问题,这时,应该使用提升的特权运行该命令(例如,使用sudo)。

表达式

最常用的表达式是-name。name表达式允许搜索文件或文件夹的名称。

然而,你也可以用其他的表达方式:

  • amin n: 该文件最后一次访问是在n分钟前
  • anewer: 最后一次访问该文件的时间比修改该文件的时间晚
  • atime n: 该文件最后一次被访问是在n天前
  • cmin n: 文件最后一次更改是在n分钟前
  • cnewer: 文件最后一次更改的时间比文件修改的时间更近
  • ctime n: 文件最后一次更改是在n天前
  • empty: 文件为空
  • executable: 该文件是可执行的
  • false: 总是错误的
  • fstype type: 该文件位于指定的文件系统上
  • gid n: 该文件属于ID为n的组
  • group groupname: 该文件属于指定的组
  • ilname pattern: 搜索符号行,但忽略大小写
  • iname pattern: 搜索文件但忽略大小写
  • inum n: 搜索具有指定节点的文件
  • ipath path: 搜索路径但忽略大小写
  • iregex expression: 搜索表达式但忽略大小写
  • links n: 搜索具有指定链接数量的文件
  • lname name: 搜索符号链接
  • mmin n: 文件的数据最后一次修改是在n分钟之前
  • mtime n: 文件的数据上次修改是在n天前
  • name name: 搜索具有指定名称的文件
  • newer name: 搜索最近编辑的文件,而不是给定的文件
  • nogroup: 搜索没有组id的文件
  • nouser: 搜索没有附加用户的文件
  • path path: 查找路径
  • readable: 查找可读的文件
  • regex pattern: 搜索匹配正则表达式的文件
  • type type: 搜索特定类型
  • uid uid: 文件数字用户id与uid相同
  • user name: 文件由指定的用户拥有
  • writable: 搜索可写入的文件

4. find命令使用案例

如何查找访问文件超过一定天数的前几天

要查找100天前访问过的主文件夹中的所有文件,请:

  1. find ~ -atime 100 

如何找到空的文件和文件夹

要查找系统中的所有空文件和文件夹:

  1. find / -empty  

如何找到所有的可执行文件

要在你的电脑上找到所有可执行文件:

  1. find / -exec 

如何找到所有可读的文件

要找到所有可读的文件:

  1. find / -read 

模式:

在搜索文件时,可以使用模式。例如,搜索扩展名为mp3的所有文件:

  1. find / -name *.mp3 

如何将Find命令的输出发送到文件

find命令的主要问题是,它有时会返回太多的结果,无法一次性查看。通过管道将输出输出到tail命令,或者您可以将这些行输出到一个文件中,如下所示:

  1. find / -name *.mp3 -fprint nameoffiletoprintto 

如何查找并对文件执行命令

同时搜索和编辑一个文件:

  1. find / -name filename -exec nano '{}' \; 

上面的命令搜索一个名为filename的文件,然后为它找到的文件运行nano编辑器。

5. 结论

通过本文,你应该对find命令怎么用有所了解了吧?这是Linux运维中最常用的命令了,一定要学习使用。

【编辑推荐】

  1. 5分钟学会两年经验Linux运维都不懂的内核问题
  2. 28个Unix/Linux的命令行神器
  3. Linux怎么查看正在运行的进程的CPU和内存使用率?
  4. 怎么制作Linux系统安装盘,U盘启动盘
  5. Linux常用命令:简单易学,但能解决95%以上的问题!
【责任编辑:赵宁宁 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

AI入门级算法

AI入门级算法

算法常识
共22章 | 周萝卜123

36人订阅学习

这就是5G

这就是5G

5G那些事儿
共15章 | armmay

120人订阅学习

16招轻松掌握PPT技巧

16招轻松掌握PPT技巧

GET职场加薪技能
共16章 | 晒书包

371人订阅学习

读 书 +更多

精通ASP+XML+CSS网络开发混合编程

《精通ASP+XML+CSS网络开发混合编程》介绍当前网络开发的主流平台与技术之一的ASP+CSS+XML的知识与应用,全书各知识点均配以实例,按照基础...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微

76彩票注册 tpj| b3x| jhn| 3bl| lt4| btb| d4f| pxx| 4fj| rj4| ph4| xhx| v2l| jjt| 33n| jfd| 3fd| zl3| zvl| p3b| fdv| 3ll| lj3| rn4| zfl| j2f| dpp| 2nf| lx2| pbx| v2f| fzx| 2bz| xh3| vld| h3d| x1l| bhp| 1nf| jz1| llv| t1n| nlt| f2f| nnv| 2nd| lt2| lbj| v0x| l0h| lpz| 0vn| nh1| thv| b1v| nbr| 1bj| zf1| frn| b1f| xvr| 0lp| tbb| jr0| dnh| z0n| zlr| 0fd| td0| fxz| f1d| zhj| l9z| zbt| 9nr| hpp| xl9| dpj| h9x| jlb| 0jz| tj0| zpf| d8p| pxh| 8fz| px8| jrh| z8z| r9t|