當我運行我的劇本我得到這個錯誤:錯誤在for循環
234.sh: line 3: syntax error near unexpected token `do
234.sh: line 3: `for folder in $array ; do
我沒有看到這個錯誤。幫幫我?
#!/bin/bash
base=$(pwd)
array=`find * -type d`
for folder in $array ; do
cd $folder ;
grep -n $1 * | while read line ;
do name=$(echo "$line" | cut -f1 -d:) ;
if [ "$name" == "1234.sh" ]; then
continue ;
else
string=$(echo "$line" | cut -f2 -d:) ;
a=$(expr $string - 10)
if [ $a -lt 1 ] ; then
a=1 ;
fi ;
b=$(expr $string + 10) ;
echo "-----------------------"
echo $name:$a
sed -n $a,${b}p $name;
fi ;
done
cd $base ;
done
刪除';'在'做'之前並在換行符上放上'do' – Les 2012-07-31 13:00:50
這應該不是必需的;用分號結束語句是合法的。 – chepner 2012-07-31 13:09:20
名爲「數組」的變量不是數組,它是一個字符串。 – jordanm 2012-07-31 13:12:42