免费注册 查看新帖 |

Chinaunix

广告
  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2100 | 回复: 1
打印 上一主题 下一主题

[系统管理] shell 函数调用 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2018-10-23 14:40 |只看该作者 |倒序浏览
麻烦大侠们帮忙看下,下面的脚本函数调用后报错,无法继续执行接下来的函数,不知道要怎么处理?谢谢了!

BakDir=/bkdata/svn_backup
Time=`date '+%F-%H-%M-%S'`
BakLog=${BakDir}/${Time}.log
BakSubdir=${BakDir}/${Time}
waimai=/data/wwwroot/waimai
java=/data/wwwroot/java
# export LANG=zh_CN.UTF-8
[ ! -d $BakDir ] && mkdir -pv $BakDir &> /dev/null && echo -e "\033[32m create the $BakDir successfully \033[0m"
if [ ! -d ${BakSubdir} ]; then
         mkdir -pv ${BakSubdir} &> /dev/null
else
         echo -e "\033[33m the directory ${BakSubdir} is exist. \033[0m"
fi
[ ! -f ${BakLog} ] && touch ${BakLog} &> /dev/null
exec    1> ${BakLog}
exec    2>&1
set -x
#  delete the old backupfile
#find ${BakFir} -maxdepth 1 -type f -mtime +$(expr ${Maxdays} -1) -exec echo "delete {}" \; -exec rm -f "{}" \;

svn_backup() {
  if ! /bin/svnadmin hotcopy --clean-logs $1 ${BakSubdir} &> /dev/null; then
                        sleep 5
                        echo -e "\033[033m the directory is empty, or backup fail \033[0m"
                        return 1
                else
#  check if the backupfile is useful
                        echo -e "\033[32m backup successful...\033[0m"
                        /bin/svnlook youngest ${BakSubdir}
                        return 0
                                if [ $? -ne 0 ]; then
                                        exit 2
                                else
                                        EndTime=`date '+%F-%H-%M-%S'`
                                        echo -e "start backup the revision in $Time, and end in $EndTime" >>  ${BakLog}
                                fi
                fi
}
       svn_backup ${waimai} 2> /dev/null
       if [ $? -eq 0 ]; then
               Project1=${waimai*/}
                cd ${BakDir}
                /bin/tar -zcvf ${Time}${Project1}.tar.gz ${Time}/
                rm -rf ${BakSubdir}
        else
                echo -e "\033[32m the directory is wrong, or backup failed \033[0m "
       #       shift
               continue               
        fi
       continue
        svn_backup ${java} 2> /dev/null
        if [ $? -eq 0 ]; then
                Project2=${java##*/}
                cd ${BakDir}
                /bin/tar -zcvf ${Time}${Project2}.tar.gz ${Time}/
                rm -rf ${BakSubdir}
        else
                echo -e "\033[32m the directory is wrong, or backup failed \033[0m "
        #       shift
                continue
        fi


论坛徽章:
0
2 [报告]
发表于 2018-10-23 14:47 |只看该作者
问题补充:
由于第一个函数调用参数时会报以下的错误,继而无法正常执行后续的函数!

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP