function maxVersion {
  FILE_FIND=$1
  START_STR=$2
  END_STR=$3

  FILES=$(ls $FILE_FIND)

  MAX_VERSION=-1
  for FILE in $FILES ; do
    FILE="$(basename -- $FILE)"
    VERSION=`echo $FILE | grep -o -P "(?<=$START_STR).*(?=$END_STR)"`
    if [ -n "$VERSION" ] ; then
      IFS='.' read -ra arr <<< "$VERSION"
      VERSION=${arr[2]}
      if [ $VERSION -gt $MAX_VERSION ]; then
        MAX_VERSION=$VERSION
      fi
    fi
  done
  echo $MAX_VERSION

}


CATALINA_HOME=/data/tomcat/apache-tomcat-9.0.7
PATCH_VERSION=$(maxVersion "/data/tomcat/apache-tomcat-*.zip" "tomcat-" ".zip")
echo "PATCH_VERSION: $PATCH_VERSION"

NOW_VERSION=`echo "$CATALINA_HOME" | grep -o -P '(?<=tomcat-).*(?=$)'`
IFS='.' read -ra arr <<< "$NOW_VERSION"
PATCHED_VERSION=${arr[2]}
echo "PATCHED_VERSION: $PATCHED_VERSION"

if [ $PATCH_VERSION -gt $PATCHED_VERSION ]; then
  echo "패치 파일 있음. 현재: $NOW_VERSION, 패치 버전: $PATCH_VERSION"
fi


jUnit으로 HTTP기반 테스트 케이스를 작성 후 성공여부를 모니터링 하고 싶었다...



#!/bin/sh

LOG_FILE=../shell/TestCase2.log
LOG_FILE_FINISH=../shell/log/TestCase2.log

if [ -f $LOG_FILE ]; then
        echo "TestCase 현재 실행중임!"
        exit 1;
fi

java -classpath ...... org.junit.runner.JUnitCore com.test.TestCase2 > $LOG_FILE

/bin/rm -f $LOG_FILE_FINISH


FAILE_CNT_CNT=0
LOG_FILES=`cat $LOG_FILE`

for log_file in $LOG_FILES
do      
        tempS=`echo $log_file | grep "FAILURES!!!"`

        if [ "$tempS" != "" ]; then
                FAILE_CNT=1
                /bin/cp $LOG_FILE $LOG_FILE_FINISH$(date +%Y%m%d%H%M%S)   
                /bin/cp $LOG_FILE $LOG_FILE_FINISH
                break
        fi
done

if [ $FAILE_CNT = 0 ]; then
        /bin/rm -f $LOG_FILE_FINISH
fi

/bin/rm -f $LOG_FILE

# LOG_FILE_FINISH 경로에 파일이 존재 한다면 실패했다고 보면 됨...

+ Recent posts