find-使用find删除文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了find-使用find删除文件相关的知识,希望对你有一定的参考价值。
参考技术A 2020-08-171、命令:
find ./ -type f -name *" filename "* -delete #星号表示任意长度任意字符,当前目录下查找文件名包含filename的文件,type文件类型f:文件 d:目录,执行删除;是递归查询删除的;默认是不会删除不为空的目录的
find /home/gooagoo/log/ -type f -name "*_2021*" -mtime +7 -delete
包含2021且大于7天的文件,执行删除
[lxt@gagbksrv ]$ find ./ -mtime +10 | xargs rm -rf
无论是目录还是文件都删除执行
查找修改时间是10天前的文件,执行删除 #最好先执行前半段,执行结果没问题是想要的在执行rm
====================================================
-name filename #查找名为filename的文件
-perm #按执行权限来查找
-user username #按文件属主来查找
-group groupname #按组来查找
-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-mmin -n +n #按文件更改时间来查找文件,-n指n分钟以内,+n指n分钟以前
-atime -n +n #按文件访问时间来查
-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2 找文件,-n指n天以内,+n指n天以前
-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2 #查更改时间比f1新但比f2旧的文件
-type b/d/c/p/l/f #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size n[c] #查长度为n块[或n字节]的文件
-depth #使查找在进入子目录前先行查找完本目录
-fstype #查更改时间比f1新但比f2旧的文件
-type b/d/c/p/l/f #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size n[c] #查长度为n块[或n字节]的文件
-depth #使查找在进入子目录前先行查找完本目录
-fstype #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到
-mount #查文件时不跨越文件系统mount点
-follow #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio %; #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到
-mount #查文件时不跨越文件系统mount点
-follow #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio #对匹配的文件使用cpio命令,将他们备份到磁带设备中
-prune #忽略某个目录
结合 find 命令删除指定后缀的文件
结合find 删除
通过 find 来完成,更加安全智能,支持的参数更多。
可以先使用 ls 命令列出需要删除的文件看是否正确,然后再执行删除命令。例如,通过如下指令,删除 user 目录下的 png 文件:
find /home/user/ -name ".png" | xargs rm -r
以上是关于find-使用find删除文件的主要内容,如果未能解决你的问题,请参考以下文章