在 Linux 系统中,可以使用
find
和rm
的组合命令来删除修改时间超过指定天数的文件。
1.1 查找"/directoryPath"目录下(不包含子目录)修改时间超过30天并且以“abc“或“bbc“开头的文件。
find /directoryPath -maxdepth 1 -type f -mtime +30 '(' -name "abc*" -o -name "bbc*" ')' -print
/directoryPath:文件目录(不写或者"./"为当前目录)
-type f:只查找文件,如果也需要删除目录,可以去掉这个选项。
-mtime +30:查找修改时间超过30天的文件。
-print:打印匹配的文件,查看哪些文件会被删除。
1.2 查找并删除"/directoryPath"目录下修改时间超过30天的文件,最后的“\;”不能少。
find /directoryPath -maxdepth 1 -type f -mtime +30 '(' -name "abc*" -o -name "bbc*" ')' -exec rm -f {} \;
/directoryPath:文件目录(不写或者"./"为当前目录)
-type f:只查找文件,如果也需要删除目录,可以去掉这个选项。
-mtime +30:查找修改时间超过30天的文件。
-print:打印匹配的文件,查看哪些文件会被删除。
2.1 查找"/directoryPath"目录下修改时间超过30天并且以“abc“开头的文件
find /directoryPath -maxdepth 1 -type f -mtime +30 -name "abc*" -print
/directoryPath:文件目录(不写或者"./"为当前目录)
-type f:只查找文件,如果也需要删除目录,可以去掉这个选项。
-mtime +30:查找修改时间超过30天的文件。
-name "abc*":查找以 “abc”开头的文件。
-print:打印匹配的文件,查看哪些文件会被删除。
2.2 查找并删除"/directoryPath"目录下修改时间超过30天并且以“abc“开头的文件,最后的“\;”不能少。
find /directoryPath -maxdepth 1 -type f -mtime +30 -name "abc*" -exec rm -f {} \;
/directoryPath:文件目录(不写或者"./"为当前目录)
-type f:只查找文件,如果也需要删除目录,可以去掉这个选项。
-mtime +30:查找修改时间超过30天的文件。
-name "abc*":查找以 “abc”开头的文件。
-exec rm -f {} \;:对匹配的文件执行删除操作。
3.1 查找"/directoryPath"目录下修改时间超过30天并且以“abc“或“bbc“开头的文件
find /directoryPath -maxdepth 1 -type f -mtime +30 '(' -name "abc*" -o -name "bbc*" ')' -print
/directoryPath:文件目录(不写或者"./"为当前目录)
-maxdepth 1 限制搜索深度为1,即只在当前目录中搜索;如果需要包含子目录,则去掉此参数即可。
-type f:只查找文件,如果也需要删除目录,可以去掉这个选项。
-mtime +30:查找修改时间超过30天的文件。
-name "abc*"、-name "bbc*":分别查找以 “abc”或“bbc” 开头的文件。
-o:表示逻辑或(OR),连接多个 -name 条件。
-print:打印匹配的文件,查看哪些文件会被删除。
3.2 查找并删除"/directoryPath"目录(不包含子目录)下修改时间超过30天并且以“abc“或“bbc“开头的文件,最后的“\;”不能少。
find /directoryPath -maxdepth 1 -type f -mtime +30 '(' -name "abc*" -o -name "bbc*" ')' -exec rm -f {} \;
/directoryPath:文件目录(不写或者"./"为当前目录)
-maxdepth 1 限制搜索深度为1,即只在当前目录中搜索;如果需要包含子目录,则去掉此参数即可。
-type f:只查找文件,如果也需要删除目录,可以去掉这个选项。
-mtime +30:查找修改时间超过30天的文件。
-name "abc*"、-name "bbc*":分别查找以 “abc”或“bbc” 开头的文件。
-o:表示逻辑或(OR),连接多个 -name 条件。
-print:打印匹配的文件,查看哪些文件会被删除。
-exec rm -f {} \;:对匹配的文件执行删除操作。