Linux命令:查找

find命令的快速指南,用于在文件系统上查找文件和文件夹

find命令可用于查找与特定搜索模式匹配的文件或文件夹。它递归搜索。

让我们通过示例来学习它。

查找当前树下所有具有以下内容的文件:.js扩展名并打印每个匹配文件的相对路径:

find . -name '*.js'

在特殊字符(例如)周围使用引号很重要*避免shell解释它们。

在当前树下找到与名称“ src”匹配的目录:

find . -type d -name src

使用-type f仅搜索文件,或-type l仅搜索符号链接。

-name区分大小写。使用-iname执行不区分大小写的搜索。

您可以在多个根树下搜索:

find folder1 folder2 -name filename.txt

在当前树下查找与名称“ node_modules”或“ public”匹配的目录:

find . -type d -name node_modules -or -name public

您还可以使用以下方法排除路径-not -path

find . -type d -name '*.md' -not -path 'node_modules/*'

您可以搜索其中包含超过100个字符(字节)的文件:

find . -type f -size +100c

搜索大于100KB但小于1MB的文件:

find . -type f -size +100k -size -1M

搜索文件已在3天前进行了修改

find . -type f -mtime +3

搜索最近24小时内编辑的文件

find . -type f -mtime -1

您可以通过添加以下内容来删除所有与搜索匹配的文件:-delete选项。这将删除最近24小时内编辑的所有文件:

find . -type f -mtime -1 -delete

您可以对每个搜索结果执行命令。在此示例中,我们运行cat打印文件内容:

find . -type f -exec cat {} \;

注意终止\;{}在执行时用文件名填充。

免费下载我的Linux命令手册


更多cli教程: