一、查找当前目录及其子目录下所有文件
find .
这个命令会在当前目录下查找所有文件。"."表示当前目录。不加任何参数默认会递归查找子目录,直到查找完整个目录树。
二、根据文件名进行查找
find / -name "filename"
这个命令会从根目录开始查找所有名为"filename"的文件。
find /home -name "*.txt"
这个命令会从/home目录开始查找所有以".txt"结尾的文件。
三、根据文件类型进行查找
find . -type d
这个命令会在当前目录下查找所有目录。
find . -type f
这个命令会在当前目录下查找所有普通文件。
find . -type l
这个命令会在当前目录下查找所有符号链接。
四、根据文件大小进行查找
find . -size +10M
这个命令会在当前目录下查找大小超过10M的文件。
find . -size -2k
这个命令会在当前目录下查找大小小于2k的文件。
五、根据文件权限进行查找
find . -perm 777
这个命令会在当前目录下查找权限为777的文件。
find . -perm /u+x
这个命令会在当前目录下查找所有属主具有执行权限的文件。
六、使用find与其他命令结合
find . -type f -name "*.txt" -exec grep "keyword" {} \;
这个命令会在当前目录下查找所有以".txt"结尾的文件,并在这些文件中查找"keyword"的出现情况。
"-exec"选项可以让find与其他命令进行结合使用。在这个例子中,我们使用了grep命令对"*.txt"文件进行搜索。
七、查找后再进行其他操作
find . -type f -name "*.txt" -print0 | xargs -0 chmod 644
这个命令会在当前目录下查找所有以".txt"结尾的文件,并将这些文件的权限设置为644。
我们使用了xargs命令来对find命令查找到的文件进行操作。"-print0"选项会将文件名以null字符分割,以避免文件名中包含空格、换行符等特殊字符导致xargs无法正确处理。
以上就是使用Linux全局查找文件命令find的介绍。这个命令十分强大,我们可以根据自己的需求灵活运用。