find实现特殊功能示例

find列出目录下所有文件:

# find /shell-script/

# find /shell-script/ -print

find列出文件夹中所有开头为text的文件,参数-iname意思忽略大小写:


# find /shell-script/ -name "text*"
# find /shell-script/ -name "text*" -print
# find /shell-script/ -iname "text*" -print

find列出文件夹中所有开头为text或c开头的文件:


# find /shell-script/ ( -name "text*" -o -name "c*" ) -print

find列出目录路径包含shell的文件:


# find /shell-script/ -path "*shell*" -print

find命令中使用正则表达式,其中!表示否定的意思:


# find . -regex ".*(.sh|.txt)$"
# find . -iregex ".*(.sh|.txt)$"
# find . ! -iregex ".*(.sh|.txt)$"

find指定目录深度查找:


# find /etc/ -maxdepth 2 -mindepth 2 -name "passwd" -print

find查找特定文件格式的文件:


# find /usr/local/ -type d -print
# find /usr/local/ -type f -print

# find /usr/ -type l -print

find安找文件时间进行查找,linux下文件包含3种时间格式:


# find . -type f -atime -1 -print
# find . -type f -mtime 1 -print
# find . -type f -mtime +3 -print

# find . -type f -newer text1.txt -name "*.txt"

find按照文件大小查找:


# find . -type f -size +2k

find查找相应文件,并删除文件:


# find . -type f -newer text1.txt -name "*.txt" -delete

find按照权限进行查找:


# find -type f -perm 777 -print
# find . -type f -user chavin -print

find对查找到的文件执行动作(-exec):


# find . -type f -user chavin -exec chown -R root:root {} ;
# find . -type f -user chavin -exec chown -R root:root {} +;

find查找但是屏蔽特定文件:


# find . ( -name "oracle*" -prune ) -o ( -type f -print )

原文地址:https://www.cnblogs.com/wcwen1990/p/7045695.html