0403-057语法错误:`;'不是预期的

时间:2014-03-27 10:16:21

标签: unix unix-socket

if 
[ -d patch/tempatch ];
then;
cd patch/tempatch/;

for i in `ls`;
do;
tar -xvf $i;
rm -f $i;
done;

for i in `ls`;
do;
cd $i;
cp -R files/* patch/SP02JUL11/files/;
cd ..;
rm -Rf $i;
done;

else;
echo "directory not found";
fi

用&#34 ;;"

分隔单行中的所有命令

执行它时会抛出0403-057 Syntax error: ; is not expected

任何人都可以帮忙吗?

谢谢

1 个答案:

答案 0 :(得分:1)

没有指定哪个shell正在填充此脚本...从错误代码我假设它 ksh ...

从错误消息中,我认为问题在于thenelsedo ksh 不接受{{1} }。

然而,出于好奇,我只是在我的linux盒子上安装了ksh。 它出现在版本" 93u + 2012-08-01"。 你的脚本运行得很好,没有语法错误,这里...... 可能你正在运行一个不同的(可能更旧的)shell版本,或者根本不同的shell ...你应该明确指定你正在使用哪个shell ...: - )。