2017-03-07 58 views
1

我想在bash腳本中執行psql語句並將結果輸出到文件。我有下面的代碼可以作爲所希望的:如何在bash for循環內執行psql命令

#!/bin/bash 

query="select * from mytable;" 

psql <<EOF > output.txt 
\timing 
$query 
EOF 

我希望運行的psql命令塊的5倍,並具有附加到output.txt結果。它工作正常,如果我只複製並粘貼額外的4次,但當我嘗試將它放在for循環中時,我會收到錯誤。有沒有辦法做到這一點?

這是循環我累了:

#!/bin/bash 

query="select * from mytable;" 

for ((i=0; i<5; i++)) 
do 
    psql <<EOF > output.txt 
    \timing 
    $query 
    EOF 
done 

如果我提出最後EOF一路到左邊,只執行一次,因爲如果循環是不存在。

+0

替換'> output.txt'用'>> output.txt'。 – codeforester

回答