0403-057 第 43 行的语法错误:“<”不匹配

0403-057 Syntax error at line 43 : `<' is not matched

我收到以下错误

0403-057 Syntax error at line 43 : `<' is not matched.

对于 AIX 服务器上的以下 isql 连接对象。

isql -Uusername -Sserver -Ppassword -w 5000  -s"|" << EOF >>$LOG

我寻找了各种间距选项,但都一样。

$LOG 的值如下。

LOG="./log.txt"

这当然是在isql连接语句之前声明的。

请帮忙。提前致谢。

我想我在这里找到了答案。 尽管如此,我不得不完全删除我的脚本

while read line
do

echo "$line" | while IFS=\| read row_id col_name col_value
do

isql -Uusername -Sserver -Ppassword -w 5000  -s"|" << EOF >> $LOG

EOF

done < $FILE

我从上面的 while 循环中删除了所有 sql 语句,以使其不那么混乱并且更容易找出罪魁祸首。发现我错过了关闭 while 循环之一。

下面是正确的循环。

while read line
do
echo "$line" | while IFS=\| read tranche_id col_name col_value
do

isql -Uusername -Sserver -Ppassword -w 5000  -s"|" << EOF >> $LOG

EOF

done

done < $FILE

很难过 'done' 想念我。

如果您有以下错误;

^M:  not found.
0403-057 Syntax error at line x : `if' is not matched.

创建 .gitattributes 文件并插入下面的 shell 脚本。保存并添加 .gitattributes 文件到你的项目。

*.sh text eol=lf

此 .gitattributes 文件将 .sh 文件配置为 运行 in unix