linux系统find命令使用

版权声明:本文为博主原创文章,欢迎转载,转载请注明作者、原文超链接。 https://blog.csdn.net/axing2015/article/details/88818768

在 linux 不可视的系统中 find 是一个重要的命令,它可以快速定位文件或目录。
下面列出一些与 find 组合使用的命令。

  1. 查找指定文件名称的文件

    # 根目录查找,不显示异常结果,或没有权限结果
    find / -name "abc.txt" 2>dev/null
    # 当前目录查找
    find ./ -name "abc.txt"
    # 指定目录查找
    find /test -name "abc.txt"
    find ./test -name "abc.txt"
    
  2. 查找通配文件名称的文件

    # 根目录查找,不显示异常结果,或没有权限结果
    find / -name "*abc.txt" 2>dev/null
    # 当前目录查找
    find ./ -name "*abc.txt"
    # 指定目录查找
    find /test -name "*abc.txt"
    find ./test -name "*abc.txt"
    
  3. 列出所有文件

    find /
    find ./
    
  4. 忽略大小写,把上面 -name 修改成 -iname 即可

    find / -iname "abc.txt"
    
  5. 限制查找目录的深度

    find / -maxdepth 2 -name "abc.txt"
    
  6. 查找不包含指定文件的其他文件

    find / -not -name "*.txt"
    
  7. 组合查询

    # 既包含 abc 又包含 .txt 的文件
    find / -name "abc*" ! -name "*.txt"
    # 包含 .bin 或包含 .txt 的文件
    find / -name "*.bin" -o -name "*.txt"
    
  8. 只查找文件

    find / -type f -name "abc*"
    
  9. 只查找目录

    find / -type d -name "abc*"
    
  10. 查找不同目录下的文件

    find ./test1 ./test2 -type -f -name "abc*"
    
  11. 查找隐藏文件(隐藏文件是以.开头的)

    find / -type -f -name ".*"
    
  12. 查找指定权限的文件

    find / -type -f -perm 0666
    
  13. 查找只读文件

    find / -maxdepth 1 -perm /u=r
    
  14. 查找可执行文件

    find / -maxdepth 1 -perm /a=x
    
  15. 查找属于指定用户的文件

    find / -user jin
    find / -user jin -name "*.txt"
    
  16. 查找属于指定用户组的文件

    find / -group jins
    
  17. 根据文件修改或访问时间查找

    # 查找第N天修改过的文件
    find / -mtime 2
    # 查找第N天访问过的文件
    find / -atime 2
    # 查找某时间内修改过的文件
    find / -mtime +2 -mtime -5
    # 查找N分钟内状态改变的文件
    find / -cmin -5
    # 查找N分钟内修改过的文件
    find / -mmin 30
    # 查找N分钟内访问过的文件
    find / -amin 30
    
  18. 按文件大小查找

    # 查找指定大小文件
    find / -size 10M
    # 查找指定范围大小文件
    find / -size +10M -size -20M
    
  19. 查找空文件或空目录

    # 空文件
    find / -type f -empty
    # 空目录
    find / -type d -empty
    
  20. 删除查找到的文件或目录

    # 文件
    find ./test -type f -name "test" | xargs rm -rf
    # 目录
    find ./test -type d -name "test" | xargs rm -rf
    

猜你喜欢

转载自blog.csdn.net/axing2015/article/details/88818768