Linux Shell 定时删除某几天前文件夹下文件

该博客介绍了如何使用Linux shell脚本清除指定目录中一天前的文件。脚本通过`find`命令结合`mtime`参数查找指定时间范围的文件,并使用`rm -rf`进行强制删除。内容涉及自动化清理、文件管理系统及Linux基础操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

脚本

#!/bin/sh
echo '清除文件开始';
find /tmp/email -mtime +1 -name "*.*" -exec rm -Rf {} \;
echo '清除文件结束';

命令解释

/tmp/email:准备要进行清理的任意目录

-mtime:标准语句写法

+1:查找1天前的文件,+7表示查找7天前的文件

"*.*":希望查找的数据类型,"*.doc"表示查找扩展名为doc的所有文件,"*"表示查找所有文件

-exec:固定写法

rm -rf:强制删除文件,包括目录

{} \; :固定写法,三部分组成,大括号+空格+/;

定时执行

添加cron脚本即可

### 删除文件夹Linux 命令 在 Linux 中,可以使用 `rmdir` 和 `rm` 命令来删除目录。以下是两种主要方法及其适用场景: #### 使用 `rmdir` 删除空目录 如果目标文件夹为空,则可以直接使用 `rmdir` 命令将其移除。此命令仅适用于空目录[^1]。 ```bash rmdir folder_name ``` #### 使用 `rm -r` 或 `rm -rf` 删除非空目录 对于包含文件或其他子目录的非空目录,需使用 `rm` 命令并附加选项 `-r`(递归删除)。为了强制执行而不提示确认消息,可进一步添加 `-f` 参数[^1]。 - **注意**:`rm -rf` 是非常危险的操作,因为它会无条件地永久删除指定路径下的所有内容,请务必谨慎操作。 ```bash rm -r folder_name # 递归删除目录及其中的内容,但仍可能提示确认 rm -rf folder_name # 强制递归删除目录及其中的所有内容,不提示任何警告 ``` --- ### 自动化删除文件或过期数据 除了手动删除外,在某些情况下还需要定期清理特定时间范围内的历史记录或者备份文件。这可以通过组合 `find` 命令实现自动化处理[^2]。 例如,要自动清除某目录下超过 X 天未访问过的文件,可以用如下方式之一完成: 1. 结合 `xargs` 和 `rm`: ```bash find /path/to/directory -type f -mtime +X | xargs rm -f ``` 2. 利用 `-exec` 子句调用 `rm`: ```bash find /path/to/directory -type f -mtime +X -exec rm -f {} \; ``` 3. 应用内置 `-delete` 功能简化流程: ```bash find /path/to/directory -type f -mtime +X -delete ``` 最后一步是通过配置定时任务计划工具 Cron 来安排周期性的脚本运行,从而达到无人值守维护的效果[^2]。 --- ### 其他常用辅助指令简介 这里列举几个与管理文件系统有关的基础命令供参考[^3]: | 指令 | 描述 | |------------|----------------------------------------------------------------------| | `pwd` | 显示当工作目录的位置 | | `mkdir` | 创建新目录 | | `ls` | 查看目录列表 | | `cd` | 更改到另一个目录 | 以上就是关于如何利用 Linux Shell 移除整个文件夹的相关说明以及一些扩展技巧介绍。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值