我的主脚本api_call.sh内部调用config.sh,并将参数值传递给主脚本。 当我在Linux中执行脚本时,脚本运行良好。但是当我通过外部表查询时,第二个脚本不会将输出返回到主脚本。
谁能告诉我。 通过外部表查询时,调用第二个脚本时是否需要指定位置? 以及如何将值从第二个脚本返回到第一个脚本。
脚本1:apicall.sh
export SourceName FileName
. ./config.sh "$SourceName" "$FileName"
从配置文件获取应用程序类型到主脚本 v_application_type = $ application_type
脚本2:config.sh
while :
do
case $1 in
xxx)
application_type=application/json
done
break
;;
*)
paramexist=0
break
;;
esac
done
CREATE TABLE XXX_XT
(
SCRIPT_OUTPUT VARCHAR2(4000 BYTE)
)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY TMP_DIR
ACCESS PARAMETERS
( RECORDS DELIMITED BY NEWLINE
preprocessor edw_bin_dir : 'apicall.sh'
skip 1
LOGFILE LOG_DIR:'api_call_xt.log'
fields terminated by ','
)
LOCATION (TMP_DIR:'xxx.json')
)
REJECT LIMIT UNLIMITED
PARALLEL ( DEGREE DEFAULT INSTANCES DEFAULT );