2015-01-16 63 views
2

在執行以下代碼警告:這裏的文檔在bash

list="$(Result "$VARDB" "$VAR2" - <<-EOT 
SELECT d.day || '@' || t.mo 
FROM daa a,dab b; 
EOT)" 

我得到以下錯誤:

warning: here-document at line 5 delimited by end-of-file (wanted `EOT') 

代碼的bash版本3.2.25下工作良好,但它觸發錯誤在4.1.2版

回答

3

試試這個:

list="$(Result "$VARDB" "$VAR2" - <<EOT 
SELECT d.day || '@' || t.mo 
FROM daa a,dab b; 
EOT 
)" 

這是因爲here-doc字面上與任何字符串開始。所以開始是EOT並且找到文件的結尾而不是EOT
剛剛看到的外殼EOT)不是EOT