1. 程式人生 > 實用技巧 >新增 Oracle 例項選單

新增 Oracle 例項選單

當一個伺服器下安裝了多個例項,每次都要選擇 ORACLE_SID,很煩

如下,在 Oracle 使用者的環境變數中配置。

#Add for Multi DB
echo "please choose ORACLE_SID for use"
echo "select 1 is XXX"
echo "select 2 is XXX"
echo "select 3 is XXX"
echo "select 4 is XXX"
echo "select 5 is XXX"
echo "select 6 is XXX"
echo "select 7 is XXX"
echo "select 8 is XXX
" echo "select 9 is XXX" echo "select 10 is XXX" echo "select 11 is XXX" echo "choose is:";read num case "$num" in 1) export ORACLE_SID=XXX;; 2) export ORACLE_SID=XXX;; 3) export ORACLE_SID=XXX;; 4) export ORACLE_SID=XXX;; 5) export ORACLE_SID=XXX;; 6) export ORACLE_SID=XXX;; 7) export ORACLE_SID=XXX;;
8) export ORACLE_SID=XXX;; 9) export ORACLE_SID=XXX;; 10) export ORACLE_SID=XXX;; 11) export ORACLE_SID=XXX;; \?) echo "ORACLE_SID not set ";; esac echo "Current ORACLE_SID been set : " $ORACLE_SID #SQLPLUS alias sql ='sqlplus / as sysdba' alias choose = 'source ~/.bash_profile'

Shell case esac語句

case ... esac 與其他語言中的 switch ... case 語句類似,是一種多分枝選擇結構。

case 語句匹配一個值或一個模式,如果匹配成功,執行相匹配的命令。

case工作方式如上所示。取值後面必須為關鍵字 in,每一模式必須以右括號結束。取值可以為變數或常數。匹配發現取值符合某一模式後,其間所有命令開始執行直至 ;;。;; 與其他語言中的 break 類似,意思是跳到整個 case 語句的最後。

取值將檢測匹配的每一個模式。一旦模式匹配,則執行完匹配模式相應命令後不再繼續其他模式。如果無一匹配模式,使用星號 * 捕獲該值,再執行後面的命令。