誰かが私のスクリプトのエラーを指摘できることを願っています。私の学びの源泉が間違っているので混乱しています。
このスクリプトの目的:ユーザーが入力した数字から数字1までの数字を計算します。
#!/bin/bash
echo -n Enter a number
read number
if (($number > 0)) ; then
index = $number
while [ $index => 1 ] ; do
echo $index
((index--))
break
done
fi
それが提供するエラー:インデックス:コマンドが見つかりません
ベストアンサー1
index = $number
=
変数に値を割り当てるときはスペースを使用できません。使用index=$number
する((index = number))
[ $index => 1 ]
私はそれがindex
1以上であることを確認したいと思います。[ $index -ge 1 ]
または((index >= 1))
- このステートメントを使用する理由は何ですか
break
?ループを終了するために使用されます。 - この
if
声明も必須ではありません。 read -p
オプションを使用してユーザーにメッセージを追加することもできます。
一緒に入れてください:
#!/bin/bash
read -p 'Enter a number: ' number
while ((number >= 1)) ; do
echo $number
((number--))
done