我希望有人可以幫助將db2命令的輸出應用於一個變量,以便稍後在腳本中使用。DB2通過bash腳本輸出到變量
到目前爲止,我在...
db2 "connect to <database> user <username> using <password>"
while read HowMany ;
do
Counter=$HowMany
echo $HowMany
done < <(db2 -x "SELECT COUNT(1) FROM SYSCAT.COLUMNS WHERE TABNAME = 'TableA' AND TABSCHEMA='SchemaA' AND GENERATED = 'A'")
當試圖引用$Counter
外while循環,它返回SQL1024N A database connection does not exist. SQLSTATE=08003
一樣的echo $HowMany
我試着用管的另一種方法,這使得$HowMany
顯示正確的值,但是因爲這是一個子外殼,所以它隨後會丟失。
我寧可不使用臨時文件,如果可能的話刪除它們,因爲如果腳本隨時中止,我不喜歡留下文件。
謝謝伊恩。上面的解決方案是我嘗試過的一個選項,但在循環外引用的變量會返回空值。我開始認爲我可能需要使用這個我很樂意避免的文件 – 2015-02-05 19:03:20
您是否在離開do循環後未設置'$ Counter'的值?或'$ HowMany'? – 2015-02-05 19:42:45
$ Counter返回一個空值,好吧,都在循環後執行 – 2015-02-05 22:15:14