1
我有一個執行某個任務並退出的過程。 該過程必須複製到大約40個數據庫,這將運行此過程。 我的擔心是,如果整個過程發生變化,每個過程都必須改變。Shell腳本 - 匿名塊
我怎樣才能創建一個shell腳本,它需要輸入 用戶名,密碼和SID,並運行一個匿名塊(同樣的過程被轉換爲一個匿名塊並放在服務器上)並運行它。
我有一個執行某個任務並退出的過程。 該過程必須複製到大約40個數據庫,這將運行此過程。 我的擔心是,如果整個過程發生變化,每個過程都必須改變。Shell腳本 - 匿名塊
我怎樣才能創建一個shell腳本,它需要輸入 用戶名,密碼和SID,並運行一個匿名塊(同樣的過程被轉換爲一個匿名塊並放在服務器上)並運行它。
下面是代碼我有時用:
dbs_list="
DB1.USR1
DB2.USR2
"
for x in ${dbs_list}
do
DB_=` echo ${x}|cut -f "1" -d . `
USR=` echo ${x}|cut -f "2" -d . `
echo "################################ #### "
echo "#processinb ${USR} @ ${DB_} -- ...#"
echo "enter password:"
read -s PWD
sqlplus ${USR}/${PWD}@${DB_} << _EOF
set serveroutput on
prompt HERE is my anonymous code block
begin
dbms_output.put_line('do my things');
end;
/
_EOF
done
注意的重要性:
/
東西在PLSQL代碼塊結束_EOF
在sqlplus僞文件塊(或所謂的着名的Here-document)之後的行開頭的東西希望這會有所幫助。
到目前爲止你做了什麼? – Nitish