bash - psql :ERROR: syntax error at or near "" LINE 1: 

标签 bash postgresql

<分区>

您好,我已经编写了这个脚本来执行 pgSQL 函数,但我遇到了这个错误

#!/bin/bash

cd /home/NorthStar/Dhruva/server-specific-scripts/crons/ResetETA

db="Dhruva"
file="/home/NorthStar/Dhruva/server-specific-scripts/crons/ResetETA/query.sql"

cmd="psql -d $db -f $file"

su postgres -c "$cmd" >> reset.log 2> reset.log

if su postgres -c "$cmd"; then
    echo "ETA Reset successed" >> resset.log
else
    echo "ETA Reset faild" >> reset_error.log
fi

最佳答案

看起来像一个 Unicode 字节顺序标记。

使用保存没有字节顺序标记的纯 utf-8 文本的文本编辑器,如 notepad++、Sublime Text、gedit、vim/emacs 等来编写脚本。

不要使用文字处理器编写 SQL 或任何其他编程风格的代码。

关于bash - psql :ERROR: syntax error at or near "" LINE 1: ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34218140/

相关文章:

bash - shell脚本中的这一行是做什么的?

regex - Bash - killall -r 不匹配

linux - 在 Linux 中使用组处理权限

javascript - 无法使用密码加密注册

sql - 大型 PostgreSQL 表 : better to add a column or create a new table to store metadata?

java - 如何在停止应用程序 JDBC 时优雅地关闭事务

Linux 狂欢。如果字段完全匹配则删除行

linux - 不要运行重复的服务实例

sql - 删除重复记录

postgresql - 在 Postgresql 中,分组后,如果某一列的任何值为 false,则返回 false。如果所有值都为true/false,则分别返回true/false