在Debian系统中编写一个清理脚本可以帮助你自动删除不再需要的文件和缓存,从而释放磁盘空间。下面是一个简单的示例脚本,你可以根据自己的需求进行修改和扩展。
#!/bin/bash
# 设置日志文件路径
LOGFILE="/var/log/cleanup.log"
# 函数:记录日志
log_message() {
echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" >> "$LOGFILE"
}
# 函数:清理APT缓存
clean_apt_cache() {
log_message "开始清理APT缓存..."
sudo apt-get clean >> "$LOGFILE" 2>&1
sudo apt-get autoclean >> "$LOGFILE" 2>&1
sudo apt-get autoremove --purge >> "$LOGFILE" 2>&1
log_message "APT缓存清理完成。"
}
# 函数:清理临时文件
clean_tmp_files() {
log_message "开始清理临时文件..."
sudo rm -rf /tmp/* >> "$LOGFILE" 2>&1
sudo rm -rf /var/tmp/* >> "$LOGFILE" 2>&1
log_message "临时文件清理完成。"
}
# 函数:清理日志文件
clean_logs() {
log_message "开始清理日志文件..."
sudo journalctl --vacuum-time=2weeks >> "$LOGFILE" 2>&1
sudo find /var/log -type f -name "*.log" -delete >> "$LOGFILE" 2>&1
log_message "日志文件清理完成。"
}
# 函数:清理浏览器缓存(以Firefox为例)
clean_browser_cache() {
log_message "开始清理浏览器缓存..."
# 请根据你的浏览器路径进行修改
BROWSER_CACHE_DIR="$HOME/.mozilla/firefox/"
sudo rm -rf "$BROWSER_CACHE_DIR"/* >> "$LOGFILE" 2>&1
log_message "浏览器缓存清理完成。"
}
# 主程序
log_message "清理脚本开始执行..."
clean_apt_cache
clean_tmp_files
clean_logs
clean_browser_cache
log_message "清理脚本执行完毕。"
创建脚本文件:
sudo nano /usr/local/bin/cleanup.sh
将上述脚本内容粘贴到文件中,然后保存并退出编辑器。
赋予脚本执行权限:
sudo chmod +x /usr/local/bin/cleanup.sh
手动运行脚本:
sudo /usr/local/bin/cleanup.sh
设置定时任务(可选):
如果你想定期自动运行这个脚本,可以使用cron
。编辑当前用户的crontab
文件:
crontab -e
添加一行来设置定时任务,例如每天凌晨2点运行:
0 2 * * * /usr/local/bin/cleanup.sh >> /var/log/cleanup.log 2>&1
sudo
。通过这种方式,你可以创建一个灵活且可定制的清理脚本,帮助你保持系统的整洁和高效。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:如何编写脚本自动清理Debian僵尸进程