在 shell 脚本中使用 SQL*Loader 时找不到 sqlldr

Ang*_*ina 3 sql shell oracle-sqldeveloper sql-loader

我想创建 shell 脚本AUTOLOAD,运行时它将使用一组指令执行 SQL*Loader。这一切都是在我的Linux环境下进行的。

SQL*loader 然后将数据导入到 SQL Developer

#!/bin/sh
#
echo -------- SQL loader --------
# @echo; 
#
sqlldr username@server1/password control=/folder1/ctrl/loader.ctl log=/folder1/load/results.l 
Run Code Online (Sandbox Code Playgroud)

我的 shell 脚本位于根目录中,这是我调用其他文件的地方。但当我尝试运行它时,它给了我错误:

- line 6: sqlldr: command not found
Run Code Online (Sandbox Code Playgroud)

我不知道如何指定 SQL*Loader 的路径,因为我在 Linux 上。

我对此很陌生......所以要温柔:(

gle*_*man 6

尝试

locate sqlldr
Run Code Online (Sandbox Code Playgroud)

那应该返回类似的东西

/u01/app/oracle/product/11.2.0/xe/bin/sqlldr
Run Code Online (Sandbox Code Playgroud)

编辑你的 ~/.profile 并在底部添加

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
PATH="$PATH:$ORACLE_HOME/bin"
Run Code Online (Sandbox Code Playgroud)

然后重新加载您的个人资料source ~/.profile(或注销并重新登录),您就可以开始了。