私はbashスクリプトに慣れていて、いくつかのことを学びたいと思っています。ここでは、私が試したコードです:whileループのbash
n=$1
shift
echo "Printing your name $n times"
count=1
for ((i=1;i<=$n;i++))
do
echo [email protected] -$i
count='expr[$count+1]'
done
echo 'New Model'
count=1
while ["$count" -le "$n"]
do
echo [email protected] -$i
count='expr[$count+1]'
done
ループはうまく動作しますが、whileループは目的の結果を印刷していません。 forループとwhileループの結果は同じでなければなりません。私が間違っている場所を教えてください。ありがとうございました。
'['実際に '/ binに/ test'へのリンクです(OK、' bash'で、それは組み込みのだが、それがどこから来るものです)。だから ''は単語(ちょうど 'ls'のようなもの)なので、それはスペースが必要な理由です。 –
@BenJackson:スペースがなくてもスペースが必要だと思います。 '[['はスペースを必要としますが、それは他の方法では*魔法でもあります。 – ruakh
ちょっと、情報ありがとう、ありがとう、私は理解していないものは、count = 'expr [$ count + 1]'はforループで動作しましたがwhileループでは動作しませんでした。ありがとうございました。 – surpavan