[script] oracleの接続確認を実施する
nagios用にbashでoracle接続確認を行うスクリプトを作成してみた。
ヒアドキュメント内で「$」を使うときにはまったが、hnakamurさんのおかげで解決できた。
ヒアドキュメント内で「$」を使うときにはまったが、hnakamurさんのおかげで解決できた。
<< EOF
↓
<< 'EOF'
に変えることで問題なく使用できた。
#!/bin/bash################################################### oracleの接続確認を実施する。# パラメータ 1:ユーザ名、2:password、3: NET_SERVICE_NAME#################################################### 終了コードOK=0WARNING=1CRITICAL=2UNKNOWN=3STATUS=${CRITICAL}if [ $# -ne 3 ]; then echo "指定された引数は$#個です。" 1>&2 echo "実行するには3個の引数が必要です。" 1>&2 exit ${UNKNOWN}fiRESULT=# end processtrap '/bin/echo "RESULT : "${RESULT}; exit ${CRITICAL}' 1 2 3 15# 環境変数セットexport ORACLE_HOME=*****export LD_LIBRARY_PATH=*********export TNS_ADMIN=**********export PATH=$ORACLE_HOME/binUSER=$1PASS=$2NET_SERVICE_NAME=$3# executeRESULT=`sqlplus -s ${USER}/${PASS}@${NET_SERVICE_NAME} << 'EOF'set feedback off;set echo off;set flush off;set head off;SELECT COUNT(1) FROM v$session WHERE type = 'USER';quitEOF`if [ $? -eq 0 ]; then STATUS=${OK}fi/bin/echo "RESULT : "${RESULT}exit ${STATUS} |