Ubuntu Recycle 能否自定义清理规则
导读:Ubuntu Recycle(回收站/Trash)支持自定义清理规则,虽然系统默认未提供图形化的自动清理设置,但可通过以下方法实现自定义规则: 1. 使用trash-cli工具结合Cron定时任务(基于文件数量/大小) trash-cli是...
Ubuntu Recycle(回收站/Trash)支持自定义清理规则,虽然系统默认未提供图形化的自动清理设置,但可通过以下方法实现自定义规则:
1. 使用trash-cli
工具结合Cron定时任务(基于文件数量/大小)
trash-cli
是一个命令行工具,可管理回收站文件。通过编写脚本设置清理条件(如文件数量上限、回收站总大小),再用Cron定时运行脚本,实现自动清理。
- 安装
trash-cli
:运行sudo apt update & & sudo apt install trash-cli
安装。 - 创建清理脚本(以“文件数量超过100则清空”为例):
新建clean_recycle_bin.sh
,内容如下:
赋予执行权限:#!/bin/bash MAX_FILES=100 # 最大文件数阈值 FILE_COUNT=$(ls -1 ~/.local/share/Trash/files/* | wc -l) # 获取当前回收站文件数 if [ "$FILE_COUNT" -gt "$MAX_FILES" ]; then trash-empty # 清空回收站 fi
chmod +x clean_recycle_bin.sh
。 - 设置Cron定时任务:运行
crontab -e
,添加以下行(每天凌晨1点运行脚本):
0 1 * * * /path/to/clean_recycle_bin.sh
(替换为脚本实际路径)。
此方法可灵活调整阈值(如修改MAX_FILES
)和清理频率(如改为每周清理)。
2. 使用autotrash
工具(基于文件留存时间/闲置空间)
autotrash
是专门用于自动清理回收站的工具,支持按文件留存天数或磁盘剩余空间触发清理,无需手动编写脚本。
- 安装
autotrash
:运行sudo apt install autotrash
安装。 - 常用命令示例:
- 删除回收站中超过30天的文件:
autotrash -d 30
; - 当磁盘剩余空间不足100MB时,删除超过30天的文件:
autotrash --max-free 100M -d 30
。
- 删除回收站中超过30天的文件:
- 设置定时任务:通过Cron定期运行
autotrash
命令(如每天凌晨2点清理超过7天的文件):
0 2 * * * autotrash -d 7
。
3. 自定义Shell脚本(灵活定制清理逻辑)
若需更复杂的规则(如“删除大于1GB的单个文件”“保留最近7天内的文件”),可编写Shell脚本结合find
命令实现。
- 示例脚本(删除回收站中超过7天且大于1GB的文件):
赋予执行权限后,通过Cron定时运行即可。此方法可根据需求调整#!/bin/bash find ~/.local/share/Trash/files/ -type f -mtime +7 -size +1G -exec rm -f { } \;
-mtime
(留存时间)、-size
(文件大小)等参数。
注意事项
- 备份重要数据:自动清理前确保回收站中无需要保留的文件,避免误删。
- 测试脚本:正式使用前在测试环境运行脚本,确认清理逻辑符合预期。
- 权限问题:确保脚本和清理目录(
~/.local/share/Trash/
)有正确的读写权限。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu Recycle 能否自定义清理规则
本文地址: https://pptw.com/jishu/732562.html