Bashシェルスクリプトで3つの値を通過するループを作成する方法

Bashシェルスクリプトで3つの値を通過するループを作成する方法

次の問題を解決するには、bashを使用してシェルスクリプトを作成しようとしています。

3つの値(ABC)を繰り返し、各値を画面に表示するループを作成します(「for」ループを使用したヒント)。

私はそれが本当だと思いますが、わからないので、どんなアドバイスにも大いに感謝します。

For (( EXP1; EXP2; EXP3 ))
do
     command1
     command2
     command3
done

答え1

for i in Alpha Beta Charlie; do
  echo "$i"
done

あなたはそれが必要も必要evalもありませんls

または、各項目の後に改行を追加して各項目を直接印刷することもできます。

printf '%s\n' Alpha Beta Charlie

evalそうでない限り使用しないでください。必ずしなければならない。 (ヒント:非常に精巧に扱わない限り、絶対に必要ありません。)eval必要以上に使用すると、セキュリティホールが発生するだけです。


あなたの元の質問は明らかです。

3つの値(ABC)を繰り返し、各値を画面に表示するループを作成します(「for」ループを使用したヒント)。

しかし、あなたのコメントによれば、ループ内でいくつかのコマンドを実行したいかもしれません。

T exp 1 exp2 exp3 値を実行したい。

実行したい場合注文するループでは、コマンドを作成してループに入れます。

for i in {1..3}; do
  echo Hip Hip
  echo 'HOORAY!'
done

最初の行も簡単に実装でき、for i in A B C; do同じことを行います。$iループのどこでもこの変数を使用しませんが、必ずしもそうする必要はありません。それでも3回実行されます。

答え2

これは簡単なはずです。

for i in A B C; do
    echo "$i"
done

関連情報