shell命令之find

find命令用于查找文件,支持的查找方式很多,功能强大,本文仅列举常用的选项。

按路径名/文件名搜索

按文件时间搜索

按文件类型搜索

按文件大小搜索

说明:

按文件属主搜索

按文件权限搜索

搜索并执行操作

注意:-ok会提供交互式以便确认,而-exec不会。

逻辑组合

如果不指定两个条件之前的逻辑关系,默认按与处理。

重要提示

例子

find . \( -name "tags" -o -name "cscope*" \) -exec rm -f {} \;
find . ! -name "*.h" -a -type f
find /usr/include -iname "*.h" -exec cp -f {} /tmp/linux \;
find . -iregex ".*\(\.txt\|\.pdf\)$"
find . -maxdepth 3 -type f -atime -7 -size -10k
find . -type f -name "*.txt" -perm 777 -delete
find . -type f -name "*.php" ! -perm 644
find . -type f -name "*.txt" -exec cat {} \; >all.txt
find . -type f -mtime +30 -name "*.log" -exec cp {} old \;
find . -type f -name "*.txt" -exec printf "File: %s\n" {} \;
find . -empty
find . -path "include" -prune -o -name "*.txt" -print
Table of Contents