#!/bin/bash DATE=$(date -d '-1 month' +%Y%m%d) #DATE=20160104 #all file file1=autoimportdate.log file2=autoPubbjNews.log file3=autoPubdgNews.log file4=autoPublishDate.log file5=importwuxiandata.log file6=autoPublishNews.log file7=AutoPubSpiderNews.log file8=autoPubztNews.log file9=autoSendMail.log file10=importnewhousedata.log file11=importnewhousedata.log.1 file12=publishinfo.log file13=ZhiShiClick.log file14=ZhiShiClick.log.1 file15=ZhiShiClick.log.2 logstr='/www/autopublish.news.fan.com/auto_publishnews/logs/' cd $logstr pwd for((i=1;i<16;i++)); do final="file"$i file=$DATE${!final} sudo rm $file echo "results:"$? ":fielName:" $file done
删除一个月前的今天的多个日志文件,注意其中有个${!final} 来获取两个变量值组成的变量名对应的变量的值,也就是shell的间接引用,下面看一下一个简单的间接引用的例子:shell
1.感叹号的使用 aaa=123 bbb=aaa echo $bbb echo ${!bbb}
输出结果:aaa 123 可见,感叹号是能够引用间接变量的值