欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

在 Linux 系统上删除过期数据

最编程 2024-10-16 12:24:10
...

在 Linux 系统中,可以使用findrm 的组合命令来删除修改时间超过指定天数的文件。


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 {} \;:对匹配的文件执行删除操作。