- 论坛徽章:
- 0
|
请教,这个问题怎么实现?
你可设在/etc/init.d中的一个文件名为exeone 其中内容有如下一行
date +%Y%m%d > rqwj (保存日期的文件)
你可写一shell,名为rqbj.
把它放在crontab中如下:
00 08 * * * /bin/rqbj
rqbj的内容如下:
str=`date +%Y%m%d`
days=10
yy=`echo $str|cut -c 1-4`
mm=`echo $str|cut -c 5-6`
dd=`echo $str|cut -c 7-8`
sav_dd=$days
days=`expr $days - $dd`
while [ $days -ge 0 ]
do
mm=`expr $mm - 1`
[ $mm -eq 0 ] && mm=12 && yy=`expr $yy - 1`
aaa=`cal $mm $yy`
bbb=`echo $aaa|awk '{print $NF}'`
days=`expr $days - $bbb`
done
dd=`expr 0 - $days`
expr $dd : "^.$" > /dev/null && dd=0$dd
expr $mm : "^.$" > /dev/null && mm=0$mm
yg=`echo $yy$mm$dd`
yrq=`cat rqwj | awk '{ print $1 }'`
if [ $yg = $yrq ]
then
echo "right"
rm /etc/init.d/exeone
fi
试试看吧. |
|