#!/bin/bash ## ------------------------------ # function : # a. check package *.tar.gz in current dir # b. check package extract tar return value of ret # c. check package runme.sh ## ------------------------------ # return : ## 0 ok ## 2 Wrong package ## 3 Wrong file extension ## ------------------------------ #-- This path has been defined in upload.cgi ,so if want to chang this path, you should chang upload.c . TAR_PACKAGE_PATH="/aw/upgrade" UPGRADE_FILE_PATH="/tmp/upgrade" PROJ_NAME="SMOD" if [ -d ${UPGRADE_FILE_PATH} ] ; then rm -rf ${UPGRADE_FILE_PATH} fi mkdir -p ${UPGRADE_FILE_PATH} check_tar=`find ${TAR_PACKAGE_PATH} -name '*.tar.gz'` ret=0 if [ -z ${check_tar} ];then # 字符串长度为0 let ret=3 else cd ${TAR_PACKAGE_PATH} && ls SMOD*.tar.gz > list.txt for TAR in `cat list.txt` do FILE_NAME=${TAR%.*.*} ###echo "file name :${FILE_NAME}" ###echo "tar -zxf $TAR -C ${UPGRADE_FILE_PATH}/" tar -zxf $TAR -C ${UPGRADE_FILE_PATH}/ extract_tar_ret=$? if [ ${extract_tar_ret} != "0" ];then let ret=2 else let ret=0 fi ###echo "extract_tar_pg = ${ret}" done rm -rf ${TAR_PACKAGE_PATH}/list.txt rm -rf ${TAR_PACKAGE_PATH}/*.tar.gz ###echo "ret = ${ret}" if [ ${ret} -eq 0 ];then # check package has runme.sh xxx_cp.sh xxx_remove.sh . # path = /dt_update/aics*/ cd ${UPGRADE_FILE_PATH}/${PROJ_NAME}* if [ -f "runme.sh" ];then ###echo "runme.sh ok" let ret=0 else ###echo "no runme.sh " let ret=2 fi fi fi if [ ${ret} -ne 0 ];then #echo "rm -rf ./package/*" rm ${TAR_PACKAGE_PATH}/* -rf sync fi echo ${ret}