질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

Unix OS마다 date의 명령어가 틀린가요..?

작성자 정보

  • 김범수 작성
  • 작성일

컨텐츠 정보

본문

 

-- 리눅스 포털인지 알지만 하도 급해서 이곳에 글을 올립니다. 

 

 


-- printlog
LOGFILE=/ap02/home/katedev/work/b/ap01/home/kate/ep/batch/batchlog.dat

# $1 => return code(성공이면 0, 실패일땐 그에 해당되는 에러코드)
printlog() {
   typeset tstamp1
   typeset tstamp2
   tstamp1=`date +'%Y%m%d%H%M%S'`
   tstamp2=`date +'%Y%m%d'`
   xx='|'
  if [ $1 -eq 0 ]; then
    print $tstamp2$xx$tstamp1$xx$1$xx$2$xx$3 >> $LOGFILE
  else
    print $tstamp2$xx$tstamp1$xx$1$xx$2$xx$4 >> $LOGFILE
  fi
}


위와 같이 어떤 로그를 찍는 공통함수가 있습니다.
그것을 어떤 쉘(test.sh)에서 아래와 같이 include후  sqlplus의 결과값을 
ret=$?로 받은후 그 값을 printlog를 호출하여 파일에 기록하려는 것입니다.
근데 이상하게 Sun OS에선 아무이상없이 실행되는것이 HP-UX에선 에러가 납니다.
에러가 어떤건가 하면 /ap02/home/katedev/work/b/ap01/home/kate/ep/batch/batchlog.dat
에 로그값이 찍히긴 하는데 날짜가 안찍힙니다.

 


-- test.sh
#!/bin/ksh
.
.

#-----------------------------------------------------------------------
dirname=`dirname $0`
basename=`basename $0`
 . $dirname/printlog ==> printlog를 include
#-----------------------------------------------------------------------
$ORACLE_HOME/bin/sqlplus -s
$username/$password@$connection << ins_EOF

-- ready to trap SQL and PL/SQL errors
whenever oserror  exit 9
whenever sqlerror exit sql.sqlcode
.
.
.
.


ret=$?
printlog $ret 쿼리작업1 successed failed

 

 

-- 성공했을시 찍히는값 (SUN OS상에서)
20051108|20051108162911|0|쿼리작업1|start
20051108|20051108162921|0|쿼리작업1|successed


-- 날짜가 안찍히는 현상(HP-UX)
 ||0|쿼리작업1|start
 ||0|쿼리작업1|successed


도대체 무엇이 문제인지.. HP-UX  경험자분의 도움요청합니다.

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  91 명