0403-057第54行的语法错误:`('不是预期的

时间:2015-09-08 13:22:57

标签: bash oracle11g ksh

arr=(`${ORACLE_HOME}/bin/sqlplus -s "${user}"/"${pass}"@ID <<EOF
    set heading off
    select distinct name from backup;
    exit;
    EOF`)

在AIX 7.1中执行脚本时遇到以下错误。

  

0403-057第54行的语法错误:`(&#39;不是预期的。

在RHEL中,它运行正常。 我需要将查询结果存储在名为arr的数组中。 你能否提出任何建议。

1 个答案:

答案 0 :(得分:0)

这里的文档终止符存在问题 - 它必须从第0列开始,并且在一行上独立存在。

arr=($(${ORACLE_HOME}/bin/sqlplus -s "${user}"/"${pass}"@ID <<EOF
    set heading off
    select distinct name from backup;
    exit;
EOF
))

请注意,ksh88不支持此数组的语法,请确保使用bash或ksh93。此外,不推荐使用反向标记,尽量不要使用它们。