当前位置 : 主页 > 编程语言 > java >

linux命令之find

来源:互联网 收集:自由互联 发布时间:2022-06-23
常见用法 按名称或正则查找文件 find . -name test.txt 查找不同类型的文件 find . -type d -name "yang*" 按指定时间戳查找 atime:访问时间戳,最后一次读取文件的时间 ctime: 上次修改元数据的时

常见用法

按名称或正则查找文件


find . -name test.txt

查找不同类型的文件


find . -type d -name "yang*"

按指定时间戳查找


atime:访问时间戳,最后一次读取文件的时间

ctime: 上次修改元数据的时间戳,如 所有权、位置、文件类型和权限设置

mtime: 文件内容上次被修改的时间

​​+​​​ 表示“大于”,​​-​​​ 表示“小于”。所以我们可以搜索 ​​ctime​​ 在 5~10 天前的文件:

find . -type f -ctime +5 -ctime -10

按大小查找文件


​​+​​​ 表示“大于”,​​-​​ 表示“小于”。

例如,要查找大小为 10 MB ~ 1 GB 的文件:

find . -type f -size +10M -size -1G

按权限查找文件


find . -type f -perm 777

按所有权查找文件


find -type f -user wanghaokun

在找到文件后执行命令


find . -type f -atime +365 -exec rm -rf {} \;

上述命令在 ​​-exec​​​ 选项后是 ​​rm -rf​​​,其用于删除文件。​​{}​​ 是用于查找结果的占位符。


注意:占位符 ​​{}​​ 非常重要,尤其是在您想删除文件时。因为,如果您不使用它,该命令将对所有文件执行(而不是您刚刚通过 find 命令找到的文件)。


-exec 选项后面的命令必须以分号(​​;​​)结束。众所周知,转义字符用于去除单个字符的特殊含义。在 Linux 中,反斜杠 ​​\​​ 用作转义字符。所以我们将它用于分号字符。

 

面试题

  • 删除当前目录下最后一次访问时间超过一年的日志文件
find . -type f -atime +365 -exec rm -rf {} \;

 

参考地址:https://mp.weixin.qq.com/s/zSjyZyFaBkS38henxVf9zg

 

上一篇:docker php8安装
下一篇:没有了
网友评论