如何在Linux中使用“find”命令搜索文件?
如果您是 Linux 用户,那么您不能仅仅依靠 GUI 来执行各种任务,因此,扎实掌握终端命令非常重要。所有基于 Linux 的发行版都运行命令来执行不同的管理任务。
虽然Linux终端是一个文本界面,看起来很复杂,但实际上它非常灵活,易于使用,是一个相当有用的工具。可以轻松地从在线源复制命令并将其粘贴到终端中以执行各种操作。命令有很多,但本文将重点介绍“查找”命令。
“find”命令用于根据用户指定的条件查找、过滤或搜索系统中的文件和文件夹,并对它们执行多种操作。
让我们详细讨论如何使用“find”命令、它的语法以及该命令执行的各种操作。
Linux 中“find”命令的语法
“find”命令语法如下所示:
“查找”命令附带三个属性:
[path]:它定义开始搜索的目录。
[options]:定义过滤的标准,例如按名称、权限、时间或日期搜索文件/文件夹。
[表达式]:定义对文件执行哪些操作。
上述所有属性都是可选的,可以根据需要使用。
为了演示,我创建了不同的目录和一些文本文件,请参见下图:
按名称查找文件
要按名称搜索文件,请使用下面给出的命令:
上述命令中“find”后面的点表示当前目录。
如果您不记得确切的文件名,可以通过使用“-iname”代替“name”来进一步细化搜索并使其不区分大小写:
按类型查找文件
要按类型查找文件,请使用“-type”选项以及也称为描述符的字母,例如“f”表示文件,“d”表示目录,“l”表示符号链接,“s”表示符号链接插座。
要搜索所有目录,请使用:
要搜索文件,请使用:
通过文件扩展名查找文件
要按模式(例如文件扩展名)搜索文件,例如显示所有带有“.txt”的文件,请使用以下命令:
所有带有“.txt”的文件将与其相应的目录一起显示。
查找并删除文件
要搜索并删除文件,请使用以下命令:
上面的命令首先搜索文件,然后删除它。该图像显示“MyTextFile1”已被删除。
要删除所有扩展名为“.txt”的文件,可以使用附加命令:
按大小查找文件
“find”命令还可以按大小搜索文件。只需使用“-size”选项及其描述符,例如“b”表示 512 Kb 块,“c”表示字节,“k”表示千字节,“M”和“G”分别表示兆字节和千兆字节:
上面的命令会搜索所有小于1024字节的文件。搜索还可以进一步细化,例如,如果我们要查找所有小于 1Mb 的文件,那么我们使用以下命令:
对于所有大于 1Mb 的文件,请使用以下命令:
还可以使用附加命令定义大小范围:
按权限查找文件
要按权限搜索文件,我们将使用“-perm”选项,然后使用权限代码,如下所示:
在文本文件中查找文本
要在系统中的多个文本文件中查找文本,请使用下面给出的命令:
该命令正在文本文件中搜索“Hello”一词。输出是包含“Hello”的文本文件中的文本字符串。
按修改日期和时间查找文件
要按上次修改访问文件,请使用以下命令:
上面的命令正在搜索四分钟前最后修改的文件,“m”表示“修改”。
上面的命令是搜索4分钟前最后访问的文件,“amin”中的“a”表示“Access”。要访问四天前修改的文件,请使用“-mtime +4”代替“mmin +4”。
结论
Linux 中的“查找”命令是一个非常有用的命令,它允许您使用不同的条件搜索文件或目录,甚至允许您从终端修改文件。在本指南中,我们观察了 Linux 中“find”命令的语法,并学习了如何使用“find”命令来执行各种功能。