我正在尝试运行一个从给定位置运行sql文件的shell脚本,结果输出在另一个位置创建一个文件。我的问题是,当我运行脚本时,它给出了一个错误说法 "语法错误:意外的文件结束"从以下行。
psql -h 192.168.1.550 -U myuser -d DBONE -f /home/dbfunction/scripts/test.sql
我的错误代码是这样的,
if [ "$filename" != "*" ]; then
psql -h 192.168.1.550 -U myuser -d DBONE &> /home/dbfunction/results/report.txt -f /home/dbfunction/scripts/test.sql << EOF
EOF
fi
如果我在终端中从同一位置运行相同的命令,则运行时没有任何错误。我的手动运行命令是,
psql -h 192.168.1.550 -U myuser -d DBONE &> /home/dbfunction/results/report.txt -f /home/dbfunction/scripts/test.sql
我删除了psql命令行和EOF行并添加了一些echo。它的工作没有任何错误。我认为&lt;&lt;&lt;&lt;&lt; EOF和EOF
有人可以帮我解决这个问题吗?