首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

哪位能帮忙将下面的sh程序写下注释啊多谢

2012-02-25 
哪位大虾能帮忙将下面的sh程序写下注释啊,谢谢!哪位大虾能帮忙将下面的sh程序写下注释啊,谢谢!#!/bin/shSH

哪位大虾能帮忙将下面的sh程序写下注释啊,谢谢!
哪位大虾能帮忙将下面的sh程序写下注释啊,谢谢!

#!/bin/sh
SH_DIR=/u1/tmn/etc
export   SH_DIR
DEL_PATH=/u1/tmn/bin/alcol/hw_omc/log
export   DEL_PATH
.   $SH_DIR/crontab.env
DT=`date   "+%m%d "`
DA=`date   "+%d "`
if   [   "$DT "   -eq   "0101 "   ]
then
      CUR_YEAR=`date   "+%y "`
      DEL_YEAR=`expr   $CUR_YEAR   -   1`
      DEL_DATE=`date   "+200 "$DEL_YEAR "1231 "`
else  
      if   [   "$DA "   -eq   "01 "   ]
      then
      CUR_MON=`date   "+%m "`
      case   $CUR_MON   in
      02,04,06,08,09   )   DEL_MON=`expr   $CUR_MON   -   1`
                                        DEL_DATE=`date   "+20%y "$DEL_MON "31 "`
                                        ;;
                              11   )   DEL_MON=`expr   $CUR_MON   -   1`
                                        DEL_DATE=`date   "+20%y "$DEL_MON "31 "`
                                        ;;  
                  05,07,10   )   DEL_MON=`expr   $CUR_MON   -   1`
                                        DEL_DATE=`date   "+20%y "$DEL_MON "30 "`
                                        ;;
                              12   )   DEL_MON=`expr   $CUR_MON   -   1`
                                        DEL_DATE=`date   "+20%y "$DEL_MON "30 "`
                                        ;;
                              03   )   COU_YEAR=`date   "+20%y "`
                                        COU_MOD=`expr   $COU_YEAR   %   4`
                                        if   [   "$COU_MOD "   -eq   "0 "   ]
                                        then
                                              DEL_DATE=`date   "+20%y0229 "`


                                        else  
                                                  if   [   "$COU_MOD "   -ne   "0 "   ]
                                                  then  
                                                          DEL_DATE=`date   "+20%y0228 "`
                                                  fi        
                                        fi                                                  
      esac
      else  
              if   [   "$DA "   -lt   "11 "   ]
              then  
              DEL_DAY=`expr   $DA   -   1`
              DEL_DATE=`date   "+20%y%m0 "$DEL_DAY " "`
              else
                      if   [   "$DA "   -gt   "10 "   ]
                      then
                      DEL_DAY=`expr   $DA   -   1`
                      DEL_DATE=`date   "+20%y%m "$DEL_DAY " "`
                      fi
              fi        
      fi      
fi
rm   $DEL_PATH/HWOMC*. "$DEL_DATE "*

[解决办法]
就是找到当前日期的前一天,删除指定那个日期命名的文件。

那么多if,else,case什么的都是废话,一个date命令就可以得到当前日期的前一天。
[解决办法]
没有测试,你的sh脚本大概可以改写成这个样子:

#!/bin/sh
SH_DIR=/u1/tmn/etc
export SH_DIR
DEL_PATH=/u1/tmn/bin/alcol/hw_omc/log
export DEL_PATH
. $SH_DIR/crontab.env
DEL_DATE=`date -d "-1 day " +%Y%m%d`
rm $DEL_PATH/HWOMC*. "$DEL_DATE "*

linux通用。

热点排行