SQL 当 运行 通过 Jenkins 管道代码中的 shell 脚本时找不到命令

SQL commands not found when run through shell script in Jenkins pipeline code

我正在尝试 运行 通过 shell 脚本跟踪 Jenkins 管道中的代码 -

sh'''
            export ORACLE_HOME=$ORACLE_HOME
            export ORACLE_SID=orcl
            cd $ORACLE_HOME/bin
            echo "Starting oracle database..."
            sqlplus /nolog
            conn sys/password as sysdba
            shutdown abort
            startup
            exit success
            echo "done"
            '''

但这会导致错误 -

SQL> + conn sys/password as sysdba /home/oracle/jenkins/workspace/Database_Error_Handling@tmp/durable-ca459d3c/script.sh: line 7: conn: command not found

None 的命令未找到,但同一命令在机器上运行良好。能否请您帮助了解这里可能出了什么问题?

尝试使用以下脚本并在 sqlplus 提示符下替换您要执行的脚本

export ORACLE_HOME=$ORACLE_HOME
export ORACLE_SID=orcl
echo "Starting oracle database..."
$ORACLE_HOME/bin/sqlplus "/nolog"  **<<  EOF**

select name from v$database;

exit;

-- Replace the above 2 lines which you want to execute it in sqlplus

**EOF**

echo "done"