find命令详解(最新)

  find 是一个常用的 Linux/Unix 命令,用于在指定目录下搜索文件和目录。它提供了广泛的搜索选项,可以根据文件名、文件类型、大小、权限、修改时间等条件进行搜索。以下是 find 命令的基本用法和选项:

基本语法:

find [路径] [选项] [操作]

常用选项和操作:

选项:

  • -name:按照文件名进行搜索。
  • -type:按照文件类型进行搜索(如普通文件、目录、符号链接等)。
  • -size:按照文件大小进行搜索。
  • -mtime:按照文件的修改时间进行搜索。
  • -exec:对搜索到的文件执行指定的操作。
  • -delete:删除搜索到的文件。
  • -print:将搜索到的文件输出到标准输出。

操作:

  • -ls:类似于 ls -l 命令的输出格式,显示文件的详细信息。
  • -ok [命令]:对搜索到的文件执行指定的命令,并在执行前进行确认。
  • -exec [命令] {} \;:对搜索到的文件执行指定的命令。
  • -delete:删除搜索到的文件。

示例用法:

1. 在当前目录及其子目录中搜索名为 "myfile.txt" 的文件:

find . -name myfile.txt

结果:

2. 在 /home/user 目录中搜索所有类型为普通文件(而非目录或链接)的文件:

find /home/user -type f

结果:

3. 在当前目录及其子目录中搜索大于 1MB 的文件:

find . -size +1M

结果:

 4. 在当前目录及其子目录中搜索最近 7 天内修改过的文件:

find . -mtime -7

结果:

5. 在当前目录及其子目录中搜索所有权限为755的文件,并删除它们:

find . -perm 755 -delete

结果:

6. 在当前目录及其子目录中搜索所有以.log结尾的文件,并将它们移动到logs目录:

find . -name "*.log" -exec mv {} logs/ \;

结果:

 7. 在当前目录及其子目录中搜索所有类型为普通文件(而非目录或链接)的文件,并打印它们的所有者、所属组和其他权限:

find . -type f -exec md5sum {} \;

结果:

8. 在当前目录及其子目录中搜索所有最近7天内修改过的文件,并将它们复制到另一个目录:

find . -mtime -7 -exec cp {} /path/to/destination \;

9. 在当前目录及其子目录中搜索所有文件大小超过1GB的文件,并将它们压缩为zip格式的存档文件:

find . -size +1G -exec zip archive.zip {} \;

        这些示例只是展示了find命令的一些常见用法。find命令非常强大且灵活,可以根据不同的条件进行复杂的搜索和操作。通过使用不同的选项和操作符,你可以根据自己的需求定制搜索条件和操作

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值