Skip to content
目录

find命令

find命令是一个强大的命令行工具,用于在指定目录及其子目录中查找符合条件的文件和目录。它可以根据不同的标准(如文件名、文件类型、文件大小、修改时间等)来查找文件。

语法

find 路径 [选项] [表达式]

选项

  • -name pattern:按文件名匹配模式。
  • -type type:按文件类型匹配。常见的类型有f(普通文件)、d(目录)和l(符号链接)。
  • -size [+|-]size:按文件大小匹配。可以使用+表示大于,-表示小于,后面跟上文件大小。
  • -mtime [+|-]n:按文件修改时间匹配。可以使用+表示更早,-表示更晚,后面跟上天数。
  • -exec command {} \;:对每个匹配的文件执行指定的命令。
  • -print:打印匹配的文件路径。

示例

  1. 在当前目录及其子目录中查找名为file.txt的文件:

    find . -name file.txt
    
  2. /home目录中查找类型为普通文件、大小大于1MB的文件:

    find /home -type f -size +1M
    
  3. 在当前目录及其子目录中查找修改时间在最近7天内的文件:

    find . -mtime -7
    
  4. 在当前目录及其子目录中查找名为file.txt的文件,并删除它们:

    find . -name file.txt -exec rm {} \;
    
  5. 在当前目录及其子目录中查找名为file.txt的文件,并将结果输出到文件output.txt

    find . -name file.txt -print > output.txt