将变量作为参数传递给UNIX函数

时间:2015-06-16 12:18:31

标签: shell unix

我打算将变量作为参数传递给我的函数。(此函数的目的是连接到Terdata,从表中获取前10条记录并将其写入文件)。但我的函数不是调用而是调用正在显示主路径中文件的名称。

有没有办法将参数值作为变量传递。

以下是我的剧本:

#!/bin/ksh
set -x
my_first_fn()
{
query="SEL TOP 10 * FROM XYZ.TABLENAME"
${BTEQ} << EOF
.logon ${pSERVER}/${pUSERNAME},${pPWD};
.set width 6000;
.set separator ',';
.set titledashes off;
.EXPORT FILE = '${home}/BTEQ.txt';
${stmt};
.EXPORT RESET

.IF ERRORCODE <> 0 
THEN .GOTO EXITERR
.QUIT 0;
.LOGOFF;

.LABEL EXITERR
.QUIT 1;
.LOGOFF;
EOF
}


LOG_FILE=${home}/myscript.log

my_first_fn $query | tee ${LOG_FILE}

提前致谢......: - )

1 个答案:

答案 0 :(得分:0)

我没有定义stmt变量并期望脚本执行。这是导致问题的部分。比这更直接我可以直接调用函数并在函数体中提及SEL TOP 10 * FROM XYZ.TABLENAME 。 - UnixNewbie