Find 命令用于过滤文件系统中的对象。 它可用于查找文件、目录、特定模式的文件,即 txt、.php 等。 可以按文件名、文件夹名、修改日期、权限等进行搜索。
$ find [where to start searching from] [-options] [what to find]
笔记:
Linux 区分大小写。 “File”、“file”、“File”、“FILE”在Linux文件系统中都是不同的文件名。
让我们看看与 find 命令一起使用的各种选项。
考虑树层次结构:
有一些常用命令是基于此层次结构进行描述的。
- -姓名: 用于搜索特定文件。
- -exec 命令: 根据给定条件搜索文件,返回 0 作为其退出状态。
- -inum N: 搜索 inode 编号为 N 的文件。
- – 链接 N:搜索具有链接“N”的文件。
- – 较新的文件: 搜索“file”后修改的文件名。
- -烫八进制:如果权限为“八进制”,则搜索文件。
- -打印: 打印列出的文件的路径。
- -空的: 搜索空文件或目录。
- -尺寸+N/-N:搜索大小为“N”的文件。
- -用户名: 搜索用户名或用户拥有的文件。
- -rm 文件: 搜索文件并将其删除。
目录
- 使用 -name 选项查找命令
- 搜索模式文件
- 使用 -exec 选项查找:
- 使用 -inode 号查找文件。
- 使用 -links 选项查找链接
- Linux Find -newer 选项
- Linux 查找 -perm 选项
- 打印文件路径
- 查找空文件
- 搜索特定大小的文件
- Linux find -user name 选项
- 删除文件或目录
- 结论
使用 -name 选项查找命令
此命令搜索具有特定名称的文件。
$find ./A1 -name file1.txt
搜索模式文件
此命令查找特定模式的文件,例如 .php、.txt 等。
$find -name '*.txt'

使用 -exec 选项查找:
该命令根据条件返回命令执行成功的状态。
在这 example,该命令将打印其中包含“hello”关键字的行。 Grep 关键字用于在文件中查找单词。
$ find ./A1/B2 -exec grep 'hello' {} ;

使用 -inode 号查找文件。
inode 是传统 Unix 文件系统上的一种数据结构。 它被表示为文件的索引。
-inum 命令用于搜索 inode 编号为“N”的文件。
要查找 -inode 编号,命令是:
$ ls -id /path to dir
要查找具有特定 inode 编号的文件,命令将是:
$ find ./A1/B2 -inum 42032

使用 -links 选项查找链接
此命令用于搜索带有“N”个链接的文件
$ find ./B2 -links 1

Linux Find -newer 选项
该命令用于搜索’file’之后修改的文件(可以是任何文件)。
$ 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 命令有一个正确的理解。 如果您有任何问题,请在下面的评论中告诉我们。