脚本内容:
#!/bin/bash
#monitor available disk space
dir='/home/zabbix' ##文件所在路径
threshold=30 ##定义磁盘值
SPACE=$(df -P| sed -n '/\/$/p' | gawk '{print $5}' | sed 's/%//') ##筛出当前磁盘占用值
cur_date=$(date "+%Y-%m-%d %H:%M:%S")
echo "====$cur_date start===="
if [ $SPACE -ge $threshold ] ##当前磁盘值>=定义磁盘值,则执行以下命令
then
oldest_file=$(cd $dir && ls -alt| grep nohup.out| gawk '{print $9}') ##筛出需要清除的文件名
remove=$(echo '' > $oldest_file) ##清空文件内容
fi
echo "====$cur_date end===="
添加到定时任务执行即可:
crontab -e
* * * * * command
minute hour day month week command
分 时 天 月 星期 命令