Ubuntu Recycle(回收站)自动清空设置方法
Ubuntu系统的回收站(Trash)默认不会自动清空,但可通过定时任务或工具配置实现自定义自动清理。以下是具体方法:
crontab -e
0 1 * * * rm -rf ~/.local/share/Trash/files/*
0 1 * * *
表示每天凌晨1点执行;rm -rf ~/.local/share/Trash/files/*
删除回收站中的所有文件(files
目录存储实际文件,info
目录存储元数据)。Ctrl+O
保存、Ctrl+X
退出)。crontab -l
,确认添加的命令已列出。若需更规范的回收站操作(如查看回收站内容、确认清空),可安装trash-cli
工具:
sudo apt update && sudo apt install trash-cli
~/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
echo "$(date): 回收站已清空(文件数:$FILE_COUNT)" >> ~/recycle_clean.log
fi
chmod +x ~/clean_recycle_bin.sh
crontab -e
添加以下内容:0 2 * * * ~/clean_recycle_bin.sh
此脚本会在回收站文件超过100个时自动清空,并记录日志到~/recycle_clean.log
。若需为所有用户自动清空回收站,可创建系统级cron任务:
/etc/cron.daily/empty-trash
):sudo nano /etc/cron.daily/empty-trash
#!/bin/bash
rm -rf /home/*/.local/share/Trash/files/*
rm -rf /home/*/.local/share/Trash/info/*
sudo chmod +x /etc/cron.daily/empty-trash
/etc/cron.daily/
目录存在且可执行)。trash-empty
或rm -rf
命令)。/etc/cron.daily/
)需用sudo
,普通用户只能设置自己的crontab任务。echo "$(date): 操作完成" >> ~/recycle_log.txt
),便于排查问题。