默认保留 最近两天的日志
:<<EOF
shell 获取当前日期的两种方式
1. today=$(date '+%Y%m%d %H:%M:%S')
注意 : +%Y%m%d %H:%M:%S必须被单引号括起来。这里的%Y%m%d %H:%M:%S 是格式话语句,同java
2. today=`date '+%Y%m%d %H:%M:%S'`
shell 获取之前/ 之后 日志的方式
1. 可以使用 date -d "yesterday/tomorrow" 等关键字
2. 可以使用 date -d "n day ago" n 是数字,获取之前的日期
例如 2 day ago (两天前) , 3 days 三天后
示例
printf "获取昨天的日期:%s %s\n" $(date -d "yesterday" '+%Y-%m-%d %H:%M:%S')
printf "获取昨天的日期:%s %s\n" `date -d "2 day ago" '+%Y-%m-%d %H:%M:%S'`
# 上面之所以 用 两个 %s 是因为 打印的日期中间有空格。
printf "获取明天的日期:%s \n" $(date -d "tomorrow" '+%Y%m%d-%H:%M:%S')
printf "获取明天的日期: %s \n" `date -d "2 days" '+%Y%m%d-%H:%M:%S'`
EOF
today=$(date '+%Y-%m-%d')
yesterday=$(date -d "1 day ago" '+%Y-%m-%d')
echo $today
echo $yesterday
echo ${#today}
echo $date
for file in `ls /data/jinl/apache-tomcat-7.0.64/logs`;do
if [ ${#file} -gt 15 ]
then
if [[ $file != ??*"$today"* && $file != ??*"$yesterday"* ]]
then
realpath="/data/jinl/apache-tomcat-7.0.64/logs/${file}"
rm -rf $realpath
fi
fi
done