shell脚本linux目录满了,自动删除文件
时间: 2023-07-25 16:24:12 浏览: 241
linux自动删除文件
可以编写shell脚本来实现Linux目录满了自动删除文件的功能。以下是一个简单的示例脚本:
```
#!/bin/bash
DIR="/var/log" # 要清理的目录
THRESHOLD=90 # 磁盘使用率的阈值
# 获取磁盘使用率
USAGE=$(df -h | grep "$DIR" | awk '{print $5}')
USAGE=${USAGE%\%}
# 如果磁盘使用率超过阈值,则删除一周前的日志文件
if [ $USAGE -ge $THRESHOLD ]; then
find $DIR -type f -mtime +7 -name "*.log" -delete
fi
```
该脚本首先定义了要清理的目录和磁盘使用率的阈值,然后使用`df`命令获取磁盘使用率,并删除一周前的日志文件,如果磁盘使用率超过了阈值。
可以将该脚本保存为一个.sh文件,并使用cron定时任务工具来定期执行该脚本。例如,可以使用以下命令将该脚本添加到每周日的cron定时任务中:
```
sudo crontab -e # 进入cron配置页面
```
在打开的页面中添加以下命令:
```
0 0 * * 0 /path/to/script.sh
```
这条命令的含义是,在每周日的0点0分执行一次脚本,自动清理/var/log目录下一周前的所有日志文件。
阅读全文