2014-02-26 4 views
1

내가 유닉스에서 SQLPLUS 명령을 사용하여 Oracle 데이터베이스에 연결하는 간단한 스크립트 이해하려고 노력하고 있어요 : 나는 유닉스를 사용하고 있다면 내가 오라클에 연결하는 sqlplus $user_pwd으로 명령을 사용사용 SQLPLUS 명령

1 sqlplus -s /nolog > /dev/null 2>&1 <<EOF 
2 whenever sqlerror exit failure 
3 connect $user_pwd 
4 exit success 
5 EOF 

을 데이터베이스에서 나온 sqlplus 명령을 사용하려면 exit을 사용하십시오. 1,2,4,5 행을 이해하는 데 도움을주십시오. 그것은 전문가를위한 간단한 질문일지도 모르지만 나는 이것을 언제 사용하는지 이해할 수 없다.

+0

_heredoc_를 검색해보십시오. – devnull

답변

5
  • -s
  • > /dev/null 2>&1 일이 아무것도 표시하지에 힘위한 자동 모드 (아무것도 출력하지)입니다. (표준 출력 및 표준 오류를/dev/null로 리디렉션)
  • /nolog은 명령 줄 인수로 로그인하지 않기위한 것입니다. (로그인 자격 증명은 여기에 제공되지 않습니다.)
  • <<EOF은 heredoc 입력 리디렉션입니다. EOF까지의 행은 표준 입력으로 sqlplus으로 전달됩니다. (이것이 마지막 줄이 EOF 인 이유입니다.)
  • whenever 줄에 대해 : http://docs.oracle.com/cd/B19306_01/server.102/b14357/ch12052.htm 잘못된 일이 생기면 명령의 반환 값이 실패합니다.
  • connect $user_pwdsqlplus을 서버에 연결합니다.
  • exit success은 sqlplus를 반환하는 것을 성공시킵니다. http://docs.oracle.com/cd/B19306_01/server.102/b14357/ch12023.htm#i2697968