반응형
####################################################################################################
## 업무 : XXX (AA LEVEL 2기술) ##
## SHELL PROGRAM ID : XXXBV200 ##
## SHELL PROGRAM 명 : 일일거래내역 거래내역 대사 PGM ##
## SHELL PROGRAM 유형 : BATCH (기타 FTP, EAI, SORT, UNLOAD 등 Shell 프로그램 유형기술) ##
## SHELL PROGRAM 설명 : 수수료거래내역을 금액을 집계하여 감사용 TABLE에 계정별,점별 INSERT ##
## ##
##================================================================================================##
## 변 경 일자 : 변경자 : 변 경 내 역 ##
##------------------------------------------------------------------------------------------------##
## 2011-04-17 : 홍길동 : 신규 작성 ##
## ##
##================================================================================================##
####################################################################################################
####################################################################################################
## 쉘 수행 아규먼트 ( Shell에 Input으로 들어오는 아규먼트 기술) ##
####################################################################################################
## ##
## $1 : 처리일자 : 스케줄러에서 제공하는 Order Date YYYYMMDD ##
## ##
####################################################################################################
if [ $# -lt 1 ]; then
echo "인자개수는 2개가 입력 되어야 합니다.인자갯수 [$#] ";
echo "첫번째인자:대상일자, 두번째인자:기능코드 ";
echo " ex) XXXBV200.sh 20110404 1 ";
exit 100;
fi
# 입력한 일자가 8자리인지 체크
if [ ${#1} -ne 8 ]
then
echo "(E) 배치실행 입력값오류입니다. 입력된 [처리일자]가 8자리가 아닙니다.[$1]" | tee -a $SHELLOG
exit 1
fi
####################################################################################################
## 변수 설정 (Shell에 사용될 변수 설정영역) ##
####################################################################################################
## 기본 경로 정보 ##
## $DATFILEDIR : 데이터파일 BASE 경로(/cbsdat) ##
## $FTPFILEDIR : FTP데이터파일 BASE 경로(/cbsftp) ##
## $BATDIR : BATCH 실행프로그램 BASE 경로(/ncbs/batchapp) ##
## $BATLOGDIR : BATCH 로그 경로(/logs/ncbs/blog) ##
## $SHELLDIR : SHELL 프로그램 경로(/ncbs/batchapp/shell) ##
## $SHELLLOGDIR: SHELL 프로그램 로그 경로(/logs/ncbs/blog) ##
####################################################################################################
FDATE=`date "+%Y%m%d_%H:%M:%S"`
AALVL2="xxx"
BATPGMID="XXXBV200"
SHELLOGDIR=${BATLOGDIR}
SHELLOG="$SHELLOGDIR/$AALVL2/${BATPGMID}_${FDATE}.shlog"
####################################################################################################
## SHELL 프로그램 시작 ##
####################################################################################################
echo "===========================================================================" | tee -a $SHELLOG
echo " ${BATPGMID}.sh 배치쉘 실행 시작 [" ${FDATE} "]" | tee -a $SHELLOG
####################################################################################################
## 배치 실행 일자 설정 (BSBFDATE : 배치 실행 일자 정보 산출 프로그램) - 수행안함 ##
####################################################################################################
## BATBASEDATE=`BSBFDATE 기준일자 일자구분 일수 일수TYPE` ##
## 기준일자 : $1으로 입력 받은 ODATE ##
## 일자구분 : 1: 영업일자, 2: 토요일포함 영업일자, 3: 시스템일자 ##
## 일수 : +3,+2,+1,-1,-2, -3등 ##
## 일수TYPE : 10- 일, 20-주해당일, 21- 주초, 22: 주말 , 30: 월 해당일, 31- 월초, 32-월말 ##
## ##
####################################################################################################
## BATBASEDATE=`BSBFDATE $1 1 0 10` ## $1 기준 토요일이 휴일일 경우의 당영업일 산출 ##
## BATBASEDATE=`BSBFDATE $1 2 +5 10` ## $1 기준 토요일이 영업일일 경우의 5익일영업일 산출 ##
####################################################################################################
echo " 입력한 기준일자 : [$1]" | tee -a $SHELLOG
echo "************************** ${BATPGMID} START *******=*********************" | tee -a $SHELLOG
#이전 실행로그 삭제
#rm -rf ${BATLOGDIR}/${AALVL2}/${BATPGMID}*
# 프로그램 실행
${BATBIN}/${AALVL2}/${BATPGMID} $1 $2
#/ncbs/batchapp/sbin/xxx/XXXBV001 20101203
####################################################################################################
## 프로그램 종료 ##
####################################################################################################
RESULT_CODE=$?
if [[ $RESULT_CODE = 0 ]] then
echo " `date` : $BATPGMID 수행 결과 정상 종료 [ $RESULT_CODE ]" | tee -a $SHELLOG
else
echo " `date` : $BATPGMID 수행 결과 오류 발생 [ $RESULT_CODE ]" | tee -a $SHELLOG
exit 1
fi
FDATE=`date "+%Y%m%d_%H:%M:%S"`
echo " ${BATPGMID} 배치 프로그램 종료 [" ${FDATE} "]" | tee -a $SHELLOG
echo "*********************** ${BATPGMID} END *********************************" | tee -a $SHELLOG
반응형
'컴퓨터활용 > 유닉스' 카테고리의 다른 글
성능 모니터링 무료 프로그램 nmon (0) | 2012.03.28 |
---|---|
특정 프로세스를 찾아서 강제로 죽이는 쉘 (0) | 2012.02.11 |
Unexpected end of file (0) | 2010.11.12 |
쉘에서 로그 출력 방향 지정 (0) | 2010.09.06 |
문자열 숫자에 , 콤마로 세자리씩 분리하기 (0) | 2010.08.17 |