2018-09-26 · Tools

Linux 中 find 命令的常用用法示例

源于一次需要查询日志文件的特殊需求使用到了 find 命令,记录下其基本的用法。

find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

find_idea

语法

find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;

选项

find 的选项特别多,这里列举几个常用的:

对查询结果的处理动作:

示例

在当前目录及其子目录(用“.”表示)中查找任何扩展名为“c”的文件

find . -name "*.c"

将目前目录其其下子目录中所有一般文件列出

find . -type f

将目前目录及其子目录下所有最近 20 天内更新过的文件列出

find . -ctime 20

将目前目录及其子目录下所有权限为664的文件列出

find . -perm 664

使用 grep 命令在名字以 debug 开头并最近一天修改的文件中搜索 RUN 单词

find ./ -name "debug*" -mtime -1 -exec grep "RUN" {} \;
#  也可以和 xargs 结合使用
find ./ -name "debug*" -mtime -1 | xargs grep "RUN"

参考文档:

Linux find命令
find命令
【日常小记】linux中强大且常用命令:find、grep