我写了一个shell脚本,它在运行bash shell的服务器上进行数据操作。
我的脚本有一个功能,可以检索ZIP文件中的数据
function getCTLfile() {
for i in ${Array[@]}; do
if [[ `echo ${i}|awk -F . '{print $NF}'` == "ctl" ]]; then
echo "${i}"
fi
done
}
它工作得很好但是这台机器硬件有问题所以我们的系统管理员要求我将我的代码移植到另一台运行Korn shell的服务器上。
当我运行我的脚本时,它在我的功能上失败了!!即使我从命令行输入它。
$ function getCTLfile() {
-ksh: syntax error: `(' unexpected
我是否需要在任何地方更改语法?我做了一些研究,似乎一切都应该有效。
答案 0 :(得分:6)
ksh中的函数声明语法使用function
关键字或括号,但不能同时使用两者。请忽略括号或function
关键字,它应该有效。