3
i=0
for f in `awk '{print $1}' config.list`
do
    echo "i value is $i"
    if ["$i" = "0"]
    then
        echo "here"
        i=$((i+1))
        continue 
    fi
    arr[i]=$f  
    i=$((i+1))
done

上記のbashスクリプトでは、ifステートメントを使用した場合に次のようなエラーが発生します。

./script.sh: line 5: [0: command not found

私の間違いの可能性を指摘してください。

4

2 に答える 2

8

使用するif [ "$i" = "0" ]

[bashでは、周囲と条件]にスペースが必要ですif

于 2012-06-09T06:40:05.677 に答える
4

Bash ifステートメントではオペランドの前後にスペースを追加する必要があるため、このエラーが発生します。

if [ "$i" = "0" ]
于 2012-06-09T06:41:01.977 に答える