批量刪除文件,只保留目錄下最新的幾個文件,其餘均刪除

一、新建刪除腳本 del.shbash

#!/bin/bash

#保留文件數
ReservedNum=5              ##保留最新的五個文件
FileDir=/data/bak          ##文件目錄
date=$(date "+%Y%m%d-%H%M%S")

FileNum=$(ls -l $FileDir|grep ^- |wc -l)

while(( $FileNum > $ReservedNum))
do
OldFile=$(ls -rt $FileDir| head -1)
echo $date "Delete File:"$OldFile
rm -rf $FileDir/$OldFile
let "FileNum--"
done 

二、添加自動運行任務crontabspa

若是未安裝crontab,先安裝code

yum install crontabs -y

添加自動運行任務blog

crontab -ecrontab

* 0 * * * bash /home/sh/del.sh

意思是天天凌晨0點,自動運行 /home/sh文件夾下的del.sh腳本class

 

 

 

查看任務date

crontab -lgrep

相關文章
相關標籤/搜索