Linux-find命令应用举例-按时间筛选和删除文件
find参数说明:
find有很多参数是以动作首字母+时间的方式用于按访问、改变、更新时间来筛选文件。
动作表达:
-
a(last accessed) 最近一次访问时间
-
c(last changed) 最近一次改变时间
- m(last modified) 最近一次修改时间
注意此上的c和m的区别,c是change,包括文件的权限、文件名的更改都算,但是m,只有文件的本身的内容更改才算修改。
时间单位的表达:
-min(minutes) 分钟
-time 小时
-newer 文件最近一次操作(操作类型取决于前面的字母)晚于文件的修改时间
例子:
find /home -atime +10 -name "*.*" #查找home目录下10天内未访问的文件
这里的-name 参数匹配文件名,.表示匹配所有文件,atime的值+10,表示10天之前,若是-10表示10天之内,10(没有加减号)表示10天。
执行删除命令
上述操作用于查找文件,查到目标文件后删除
-exec参数,如果查找有返回,可在exec参数后加上需要操作的命令,查找结果用{}来代替
查找10天内未被修改的文件并删除命令:
find . -ctime +30 -name "." -exec rm -Rf {} \;
建立脚本
在home目录下建立文件夹cshell,建立文件rm-old.sh
$mkdir ~/cshell $vi ~/cshell/rm-old.sh
脚本内容:
#!/bin/bash
find . -atime +30 -name "." -exec rm -Rf {} \;
echo "current floder is :";
pwd;
echo "file is deleted."
存入环境变量,打开文件~/.bashrc,在最后一行添加:
export PATH=${PATH}:$HOME/cshell
使环境变量修改生效:
$source ~/.bashrc
在想删除旧文件的地方执行即可:
$rm-old.sh
更多find命令使用举例
1.查找没有777权限的文件
find . -type f ! -perm 777
2.查找只读文件
find . -perm /u=r
3.查找空目录
find . -type d -empty
4.查找某用户的文件
find . -user cgz
END~
- Linux-find命令应用举例-按时间筛选和删除文件
- linux命令4 find、三个时间属性、硬链接和软连接、用户名和密码文件、增加和删除用户组、usermod、su、sudo
- linux下find命令根据系统时间查找文件用法
- Linux 按照时间查找文件并删除命令
- Linux下通过find命令进行rm文件删除的小技巧
- linux 根据时间筛选删除文件
- linux的一个find命令配合rm删除某天前的文件
- linux下使用find命令根据系统时间查找文件用法
- Linux 按照时间查找文件并删除命令
- Linux 按照时间查找文件并删除命令
- linux的find命令--按时间查找文件
- Linux 文件时间详解 ctime mtime atime以及 find 命令
- linux 命令find,循环删除文件目录
- linux的一个find命令配合rm删除某天前的文件
- (转)linux的一个find命令配合rm删除某天前的文件
- linux下find命令根据系统时间查找文件用法
- Linux 按照时间查找文件并删除命令
- Linux 按照时间查找文件并删除命令
- linux中find命令配合rm删除某天前的文件
- Linux 按照时间查找文件并删除命令