哪位大神帮忙看下这个脚本有什么错误,谢谢

#! /bin/sh
RUN_COMMAND="/bin/sh "
if [["$1" == ""]]
then exit
fi
for x in "$@"
do
if [[${x:-7}=="libtool"]]
then
RUN_COMMAND=$RUN_COMMAND' '$x
else
if [[${x:-11} == "/libgdal.la"]]
then
sed -i.bak 's/libgdal.so.1.16.0 libgdal.so.1 libgdal.so libgdal.so.1 libgdal.so.1.16.0/' $x
fi
RUN_COMMAND=$RUN_COMMAND' '${x/\/cygdrive\/c\//C:\/}
fi
done
$RUN_COMMAND

if语句后面紧跟的[]里面的表达式要加空格,像这样 if [ exp ]

else if 语句应该使用elif

 #! /bin/sh
RUN_COMMAND=`/bin/sh `
if  [ [ "$1" == "" ] ]
then exit
fi
for x in "$@"
do 
if  [ [ ${x:-7} == "libtool" ] ]
then
RUN_COMMAND=${RUN_COMMAND}`  ` ${x}
else
if  [ [ ${x:-11} == "/libgdal.la" ] ]
then
sed -i.bak 's/libgdal.so.1.16.0 libgdal.so.1 libgdal.so libgdal.so.1 libgdal.so.1.16.0/' $x
fi
RUN_COMMAND=$RUN_COMMAND` `${x/\/cygdrive\/c\//C:\/}
fi
done
$RUN_COMMAND

用` 反引号来括住命令
我没环境就没测试,你跑跑看