Linux find命令是类Unix操作系统中最重要且常用的命令行应用程序之一。find命令用于根据指定条件搜索并定位同参数匹配的文件和目录列表。find命令提供了多种选项,可以让用户在不同条件下使用。可以根据不同标准搜索文件,如权限、用户、组、文件类型、日期、大小和其他参数。
查找特定名称文件,在当前工作目录中查找所有名为tecmint.txt的文件:
# find . -name tecmint.txt
./tecmint.txt
查找/home目录下所有名为tecmint.txt的文件。
# find /home -name tecmint.txt
/home/tecmint.txt
在/home目录中查找所有名称为tecmint.txt且包含大写和小写字母的文件。
# find /home -iname tecmint.txt
./tecmint.txt
./Tecmint.txt
在/目录中查找所有名称为Tecmint的目录。
# find / -type d -name Tecmint
/Tecmint
查找所有名称为tecmint.php的php文件。
# find . -type f -name tecmint.php
./tecmint.php
查找目录中的所有php文件。
# find . -type f -name "*.php"
./tecmint.php
./login.php
./index.php
查找所有权限为666的文件。
# find . -type f -perm 0666 -print
查找所有666没有权限的文件:
# find / -type f ! -perm 777
查找所有权限设置为644的SGID 位文件。
# find / -perm 2644
查找具有 551 权限的 Sticky Bit 文件:
# find / -perm 1551
查找所有SUID设置文件。
# find / -perm /u=s
查找所有SGID集文件。
# find / -perm /g=s
查找只读文件:
# find / -perm /u=r
查找全部可执行文件:
# find / -perm /a=x
找到所有666权限文件,并使用chmod命令将权限设置为644。
# find / -type f -perm 0666 -print -exec chmod 644 {} \;
找到所有666权限目录,并使用chmod命令将权限设置为755。
# find / -type d -perm 666 -print -exec chmod 755 {} \;
找到一个名为tecmint.txt的文件并将其删除。
# find . -type f -name "tecmint.txt" -exec rm -f {} \;
要查找并删除多个文件(例如.mp3或.txt),请使用。
# find . -type f -name "*.txt" -exec rm -f {} \;
OR
# find . -type f -name "*.mp3" -exec rm -f {} \;
查找某路径下全部空文件:
# find /tmp -type f -empty
将某个路径下的所有空目录归档。
# find /tmp -type d -empty
要查找所有隐藏文件,请使用以下命令。
# find /tmp -type f -name ".*"