2017-03-07 146 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

回答