Linux find命令

Linux find命令

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

你也可以排除一个路径,使用-而不是-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 {} \;

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

(0)
上一篇 2020年10月25日 下午10:26
下一篇 2020年10月26日 下午9:43

相关推荐

发表评论

登录后才能评论