GNU/Linux >> Linux の 問題 >  >> Linux

BashForループガイドと例

forループは、さまざまなプログラミング言語の主要なステートメントの1つであり、VPSの管理に役立ちます。ここでは、bashプログラミング言語でどのように使用されるかを説明します。そのため、「bashforloop」という名前が付けられています。開発者の兵器庫に新しいツールを追加する準備をしてください!

forループは反復ステートメントです。つまり、コードを繰り返し実行できます。命令を5回実行するとします。 5つの別々のコードを書く代わりに、forループ構文を1回書くだけで済みます。もっと深く探求しましょう。

バッシュフォーループ構文

基本的に、最も単純なforループ構文は、変数のセットの出現を繰り返します。通常、bashシーケンスは次のようになります。

for VARIABLE in 1 2 3 4 5 .. N
Perform the below command:
    command1
    command2
    commandN
done

現実の世界では、この構文は次の例のようになります。

#!/bin/bash
for i in 1 2 3 4 5
do
 echo "Hello $i"
done

bashファイルを実行すると、次のシーケンスが発生します。

Hello 1
Hello 2
Hello 3
Hello 4 
Hello 5

各要素を調べてみましょう:

  • #!/ bin / bash – コードがbashスクリプトであることを示しています
  • i –は変数のプレースホルダーです。一方、$iは変数の個々の値です。 c / $ cと書くこともできます または他の名前で
  • –変数とそれに続く項目を分離します
  • 1 2 3 4 5 –は、命令を実行するアイテムの例です
  • 行う –はループを開始するキーワードです。次に、命令をn回実行します。ここで、nはアイテムの総数です。ここで、nの値は5です
  • エコー「こんにちは:$i」 –はn回繰り返すコードです。引用符はその中のすべてのものを1つの変数に変えることを忘れないでください。
  • 完了 –ループを停止します

実行しているbashのバージョンに応じて、異なる方法でコードを記述できます。

Bashバージョン3.0以降では、「 ..」で範囲を短くすることができます 」。

#!/bin/bash
for i in {1..5}
do
  echo "Hai $i"
done

Bashバージョン4.0以降では、 {START..END..INCREMENT}を使用できます 構文。

#!/bin/bash
for i in {0..8..2}
do
  echo "Hai $i"
done

このbashシーケンスの結果は次のようになります:

Hai 0
Hai 2
Hai 4
Hai 6 
Hai 8

他の一般的な2つのループコマンド構文は次のとおりです。

for VARIABLE in file1 file2 file3
do
    command1 on $VARIABLE
    command2
    commandN
done

そしてこれ:

for OUTPUT in $(Linux-Or-Unix-Command-Here)
do
    command1 on $OUTPUT
    command2 on $OUTPUT
    commandN
done
バッシュフォーループの例

構文を更新して、複数の操作を実行できます。何かをする前に、VPSにログインする必要があることを忘れないでください。問題が発生した場合は、このPuttySSHチュートリアルで正しい道を歩むことができます。一方、bashで問題が発生した場合は、基本的なbash機能のガイドを確認する必要があります。 bash関数は.shにある必要があることを忘れないでください ファイル。作成するには、コマンドラインで次を実行します。

vim NameOfFile.sh

これにより、.shファイルが作成され、VIMエディターで開きます。詳細については、前述の基本的なbash関数の記事をご覧ください。

BashForループを使用して無限ループを作成する

一度アクティブ化されると、このループは、Control + Cを押して停止するまでコードを実行し続けます。この場合、「HelloWorld」という用語は自動的に再表示され続けます。

#!/bin/bash
for (( ; ; ))
do
  echo "Hello World!"
done

BashForループを使用して3つの式のループを作成する

ループは、初期化子( EXP1 )の3つの書き込み式で構成されます。 )、条件( EXP2 )、およびカウント式( EXP3 )。コード構造が非常に似ているため、Cスタイルのループと呼ばれることもあります。このループの構文は次のとおりです。

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

自分で試すことができるループコマンドの例を次に示します。

#!/bin/bash
for (( c=1; c<=5; c++ ))
do  
  echo "Hai $c"
done

コードは、初期値が 1であることを示しています 。 EXP2 の条件である限り、ループが実行されます。 trueです。つまり、 5より大きくすることはできません。 。さらに、 ++ 記号は、増分が 1であることを示します 。その後、初期値から1つずつループを繰り返します。結果:

Hai 1
Hai 2
Hai 3
Hai 4 
Hai 5

BashforLoopを使用してスキップアンドコンティニューループを作成する

continueステートメントは、指定された値のループをスキップし、その後ループを続行します。構文は次のようになります。

for I in 1 2 3 4 5
do
 if [condition]
 then
    continue   #Go to next iteration of I in the loop and skip statements3
 fi
 statement
done

構文に従うことで、次のようなbashスキップアンドコンティニューループコマンドを作成できます。

for i in {1..5}
do
  if [[ "$i" == '4' ]]
  then
    continue
  fi
  echo "Hai $i4"
done

このbashシーケンスの出力は次のようになります:

Hai 1
Hai 2
Hai 3
Hai 5

4以降 継続ステートメントと一致した場合、ループはコードを実行せず、次の値である 5に移動しました。 。

BashforLoopを使用してBreakLoopで条件付き出口を作成する

ループを使用すると、指定された条件を満たす場合に操作を停止できます。この後に別の命令を続けることができます。構文は次のとおりです。

for I in 1 2 3 4 5
  do
  if [condition]
  then
    break
  fi
  statement
done

この関数を使用する場合、ループコマンドは次のようになります。

for city in Manila Bangkok Jakarta Kuala Lumpur
do
  if [[ "$city" == 'Jakarta' ]]; then
    break
  fi
  echo "city: $city"
done

echo 'Yes, that’s all!'

そして出力:

city: Manila
city: Bangkok
Yes, that’s all!

このステートメントは、条件が真になったら操作を中断するようにループに指示します(ジャカルタという用語を検索します)。 )。次に、2番目のコードを実行します。このコードは、はい、それだけですというテキストを印刷します。

結論

Bash for loopは、反復的なタスクを自動化するのに最適です。上記の基本的な例とは別に、さらに多くのことができます。たとえば、ファイルを追跡したり、他の多くのタスクを実行したりできます。リストは続きます!

あなたがする必要があるのはループコマンドを書くことだけです。学習曲線かもしれませんが、この紹介を読むことは良いスタートです。練習は常に完璧になります!頑張ってください!


Linux
  1. ループの維持 – Bash For、While、Until ループの例

  2. Linux シェル スクリプト用の 12 の Bash for ループの例

  3. Bash while ループで and を使用する

  1. Bash Forループを並列化しますか?

  2. Bash の For ループと While ループの例

  3. Bash for ループの例

  1. Bash宣言ステートメント:構文と例

  2. Bashcaseステートメントの構文と例

  3. Linux バッシュ。 for ループと関数、数値の加算