为PSQL命令添加换行符



如何在bash脚本中正确换行?以下命令在不添加换行符的情况下运行良好:

for i in {table1,table2,table3}; do psql -U postgres -c "COPY (SELECT * FROM "DB"."$i") TO "$i".csv DELIMITER ',' CSV"; done

不过,我想在脚本中添加更多的表名。我一直收到(文件名太长(错误。我想做以下事情:

for i in {table1, 
table2, 
table3}; do psql -U postgres -c "COPY (SELECT * FROM "DB"."$i") TO "$i".csv 
DELIMITER ',' CSV"; done

但我一直得到错误:

ERROR:  syntax error at or near "}" 

您不需要大括号{}来表示bash中的数组,只需执行以下操作即可:

for i in table1 
table2 
table3; do psql -U postgres -c "COPY (SELECT * FROM "DB"."$i") TO "$i".csv 
DELIMITER ',' CSV"; done

最新更新