Find 命令用于过滤文件系统中的对象。 它可用于查找文件、目录、特定模式的文件,例如 txt、.php 等。 它可以按文件名、文件夹名、修改日期、权限等进行搜索。
$ find [where to start searching from] [-options] [what to find]
笔记:
Linux 区分大小写。 “File”、“file”、“File”、“FILE”都是Linux文件系统中不同的文件名。
让我们看看 find 命令使用的各种选项。
考虑树层次结构:
有一些常用的命令是基于这个层次结构来描述的。
- -名称:用于搜索特定文件。
- -exec 命令:根据给定条件搜索文件,返回 0 作为其退出状态。
- -inum N: 搜索索引节点编号为 N 的文件。
- -链接N:搜索具有链接“N”的文件。
- -较新的文件: 搜索“file”后面被修改的文件名。
- – 八进制:如果权限是“八进制”,则搜索文件。
- -打印:打印列出的文件的路径。
- -空的:搜索空文件或目录。
- -尺寸 +N/-N:搜索大小为“N”的文件。
- -用户名:搜索具有用户名或用户拥有的文件。
- -rm 文件:搜索文件并将其删除。
使用 -name 选项查找命令
此命令搜索具有特定名称的文件。
$find ./A1 -name file1.txt
搜索模式文件
此命令查找特定模式的文件,例如 .php、.txt 等。
$find -name '*.txt'
使用 -exec 选项查找:
该命令根据条件返回命令执行成功的状态。
在此示例中,该命令将打印其中包含“hello”关键字的行。 Grep 关键字用于查找文件中的单词。
$ find ./A1/B2 -exec grep 'hello' {} ;
使用 -inode no 查找文件。
inode 是传统 Unix 文件系统上的数据结构。 它被表示为文件的索引。
-inum 命令用于搜索索引节点编号为“N”的文件。
要查找 -inode 编号,命令是:
$ ls -id /path to dir
要查找具有特定 inode 编号的文件,命令将是:
$ find ./A1/B2 -inum 42032
使用 -links 选项查找链接
此命令用于搜索带有“N”个链接的文件
$ find ./B2 -links 1
Linux Find -newer 选项
该命令用于搜索在“文件”之后被修改的文件(可以是任何文件)。
$ find -newer file.txt
它将打印在“file.txt”之后修改的文件名。
Linux 查找 -perm 选项
此命令搜索具有“八进制”权限的文件。
$ find ./A1 -perm 664
打印文件的路径
该命令用于打印目录或文件的路径。
$ find -print
在这里,它将打印 B2 目录中文件的路径(考虑如上所示的树层次结构)
查找空文件
该命令用于搜索空文件或目录。
$ find ./A1 -empty
搜索特定大小的文件
此命令用于搜索大小为“N”的文件
$ find ./B2 -size 0M
Linux find -user name 选项
此命令搜索用户名或 id ‘name’ 拥有的文件。
$ find ./A1 -user vaishali
删除文件或目录
此命令用于从目录中删除文件。
$ find ./A1 -name "file.txt" -exec rm -f {} ;
这些是可用于搜索文件或目录的命令。
结论
我们希望您现在对 find 命令有一个正确的理解。 如果您有任何疑问,请在下面的评论中告诉我们。