迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 操作系统 >

在 Bash 中递归查找文件

作者:迹忆客 最近更新:2023/05/30 浏览次数:

这篇文章是关于 Bash 中的 find 命令的。 本文将讨论在 Bash 中使用 find 命令查找特定类型文件的方法。


在 Bash 中使用 find 命令递归查找文件

用于导航文件层次结构的命令行工具是 Linux 中的 find 命令。 它可用于查找和监视文件夹和文件。

它允许按名称、创建日期、修改日期、所有者以及文件和文件夹的权限进行搜索。

它具有以下语法:

$ find [directory where to start searching] [-options] [name of file]

选项可以有以下属性:

序号 选项 目标
1 -links N 它搜索一些没有的文件。 指定的链接。
2 -name 搜索具有指定名称或模式的文件。
3 -newer [filename] 搜索在文件名之后创建的文件。
4 -perm 搜索具有特定权限的所有文件。
5 -print 用于查找并显示文件的完整路径名。
6 -empty 它搜索空文件或目录。
7 -size +N/-N 用于搜索指定大小的文件。 如果N用作+N,则表示文件大小大于N; 如果用作-N,则表示文件大小小于N。
8 -user 它搜索具有指定所有者名称的文件。

让我们看一下 find 命令的某些示例。

使用文件名搜索

$ find ./mydir -name myfile.txt

此命令将在目录 mydir 中搜索文件名 myfile.txt。

输出:

Search With the Filename - Output

使用模式搜索

$ find ./mydir -name "*.jpeg"

此命令将在目录 mydir 中搜索所有扩展名为 .jpeg 的文件。

输出:

Search With a Pattern - Output

搜索具有权限的文件

$ find ./mydir -perm 777

此命令将在目录 mydir 中搜索所有具有 777 权限的文件。

输出:

Search for Files With Permissions - Output

查找具有多个名称或模式的文件

在某些情况下,您需要搜索具有多种模式的文件,例如当您需要搜索扩展名为 .txt 和 .jpg 的文件时。

$ find . -name '*.txt' -o -name '*.jpg'

对于这种情况,您可以多次使用 -name 选项。

输出:

Find Files With Multiple Patterns - Output

搜索空文件

$ find mydir -empty

此命令将在 mydir 中搜索空文件或目录。

输出:

Search for Empty Files - Output

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便