シェルスタディ-13日-ループ外(中断、続行)

1.ループから飛び出します(中断して続行します

1)ループから飛び出す

ループステートメントを使用してループするプロセスでは、ループ終了条件に達していないときにループを強制的にループから外す必要がある場合があります。シェルは、この機能を実現するために、breakとcontinueの2つのコマンドを提供します。

休憩:ループ全体から飛び出す

:概要ブレーク現在のループ全体から飛び出すまたは電流ループを終了するには。現在ではループ本体から飛び出すと、ループ本体の後のステートメントを実行するために使用され、一方で、こうした用としてループ文何も後で追加されていない場合は、それが現在のループから飛び出すと同等であることを意味します。。 break 1の場合、break3が3番目のループからジャンプすることを意味すると仮定して、その後に番号を追加することもできます。


続行:このサイクルをスキップして、次のサイクルに進みます

概要:このループの残りのコードを無視して、次のループに直接進みます。for、whileなどのループステートメントでは、現在入っているループ本体からジャンプして、ループ本体の後にステートメントを実行するために使用されます。ループの後に追加された数が1の場合これは、この条件付きループを無視することを意味します。2の場合、2つの条件付きループを無視します。

2)例1

[root @ test shell] #cat case.sh  
#!/ bin / bash 
for((i = 0; i <= 4; i ++)); do 
  echo $ i 
  case $ i in 
  1)
    echo "これは1つです" 
    ;; 
  2)
    続行#跳出本次循環 
    エコー「これは2つです」
    ;; 
  3)
    休憩#跳出整T循環環
    エコー「これは3つです」
    ;; 
  4)
    エコー「これは4つです」
    ;; 
  ESACが
行わ
[試験シェル@ルート]#SH case.sh  
0 
1
本が1 
2 
3 
[試験シェル@ルート]#

3)インタラクティブな方法を使用してユーザーをバッチで追加する

[root @ test shell] #vi useradd.sh 
#!/ bin / bash 
echo "*********************" 
read -p "作成するものを入力してくださいユーザー名: "name 
read -p"作成するユーザー数を入力してください: "num 
read -p"作成するユーザーのパスワードを入力してください: "pas 
echo" **************** ***** " 
for((i = 1; i <= $ num; i = i + 1))
do 
useradd $ name $ i&> / dev / null 
echo" $ pas "| passwd --stdin $ name $ i&> / dev / null 
done 
echo "ユーザーが作成され、結果は..." 
tail- 
$ num / etc / passwd [root @ test shell] #sh useradd.sh  
********** ***********
作成するユーザー名を
入力してください:test作成するユーザーの数を
入力してください:1作成するユーザーのパスワードを入力してください:123456 
************* ********
ユーザーの作成が完了し、結果は... 
test1:x:504:504 :: / home / test1:/ bin / bash 
[root @ test shell]#

個人公開番号:

image.png

おすすめ

転載: blog.51cto.com/13440764/2575388