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
Shell Script
- [shell] Tomcat 버전 체크 2020.07.17
- Shell Script 예제(jUnit TestCase 실패 모니터링) 2014.04.01
[shell] Tomcat 버전 체크
2020. 7. 17. 13:08
Shell Script 예제(jUnit TestCase 실패 모니터링)
2014. 4. 1. 14:47
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 경로에 파일이 존재 한다면 실패했다고 보면 됨...