欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Shell循環(huán)語句及中斷語句的使用

 更新時間:2023年05月09日 09:57:32   作者:霧秋.  
本文主要介紹了Shell循環(huán)語句及中斷語句的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

for循環(huán)語句

讀取不同的變量值,用來逐個執(zhí)行同一組命令

for 變量名 in 取值列表
do                   
   命令序列
done

遍歷

for i in {1..10}
      或 $(seq 1 10)
      或 ((i=1; i<=10; i++))
do
echo $i
done 

for i in {1..10..2} 
      或 $(seq 1 2 10)
      或 ((i=1; i<=10; i++))
do
echo $i
done 

例題1:批量添加用戶

①創(chuàng)建用戶名的文件

②編寫腳本

#!/bin/bash
a=$(cat name.txt)
 for i in a
do
 useradd $i
 echo "123456" | passwd --stdin $i
done

③驗證

例題2:根據(jù)IP地址檢查主機狀態(tài)

#!/bin/bash
for i in 192.168.100.{1..20}
do
  ping -c 3 -i 0.5 -W 2 $i &> /dev/null
if [ $? = 0 ]
 then
  echo "$i online"
 else
  echo "$i offline"
fi
done

while循環(huán)語句

重復測試某個條件,只要條件成立則反復執(zhí)行

while 條件測試操作
do
   命令序列
done
#!/bin/bash
i=0
while (($i <=10))
do
echo "$i"
let i++
done

例題1 猜價格游戲

#!/bin/bash
price=$[$RANDOM % 1000]
a=0
times=0
echo "猜猜商品價格是多少"
while [ $a -eq 0 ]
do
let times++
read -p "請輸入你猜的價格:" b
if [ $b -eq $price ];then
  echo "yes!"
  let a++
elif [ $b -gt $price ];then
  echo "你猜大了!"
elif [ $b -lt $price ];then
  echo "你猜小了!"
fi
done
echo "你總共猜了 $times 次"

例題二:批量添加用戶

#!/bin/bash
i=0
while [ $i -le 4 ]
 do
 let i++
useradd stu$i
 echo "123456" | passwd --stdin stu$i
done

until循環(huán)語句

重復測試某個條件,只要條件不成立則反復執(zhí)行

until 條件測試操作
do
   命令序列
done
#顯示1-10的整數(shù)
#!/bin/bash
i=1
until [ $i -gt 10 ]
do
 echo "$i"
 let i++
done

例題:計算1~50的值

#!/bin/bash
i=1
sum=0
until [ $i -gt 50 ]
do
 sum=$(($sum+$i))
 let i++
done
 echo "$sum"

中斷(break和continue)

①break

break跳出單個循環(huán)

#!/bin/bash
for i in {1..5}
do
echo "外層循環(huán) $i"
 for b in {1..5}
 do
 if [ $b -eq 3 ]
  then
  break
 fi
  echo "內(nèi)層循環(huán) $b"
done
done

②continue

continue中止某次循環(huán)中的命令,但不會完全中止整個命令

#!/bin/bash
for i in {1..5}
 do
  echo "外層循環(huán) $i"
  for b in {1..5}
 do
 if [ $b -eq 3 ]
  then
  continue
 fi
  echo "內(nèi)層循環(huán) $b"
 done
done

IFS字段分割符

默認包含空格,制表符,換行符

1.修改
IFS=$'\t\n'
修改成只換行
IFS=$'\n'
IFS=':'
IFS=','
2.備份
IFS. OLD=$IFS
IFS=$'\n'
...
IFS=$IFS.OLD

例題:輸出環(huán)境變量PATH所包含的所有目錄以及其中的所有可執(zhí)行文件

#!/bin/bash
OLDIFS=$IFS
IFS=':'
  for i in $PATH
 do
  for a in $i/*
 do
 if [ -x $a -a -f $a ];then
  echo "$a 文件有執(zhí)行權(quán)限"
 fi
 done
done
IFS=$OLDIFS

到此這篇關(guān)于Shell循環(huán)語句及中斷語句的使用的文章就介紹到這了,更多相關(guān)Shell循環(huán)語句及中斷語句內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Shell 批量進程判斷是否存在

    Shell 批量進程判斷是否存在

    本文主要介紹了Shell 批量進程判斷是否存在,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • shell編程中for循環(huán)語句的實現(xiàn)過程及案例

    shell編程中for循環(huán)語句的實現(xiàn)過程及案例

    Bash?Shell中主要提供了三種循環(huán)方式:for、while和until,下面這篇文章主要給大家介紹了關(guān)于shell編程中for循環(huán)語句的實現(xiàn)過程及案例,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-04-04
  • shell結(jié)合expect寫的批量scp腳本工具

    shell結(jié)合expect寫的批量scp腳本工具

    expect用于自動化地執(zhí)行l(wèi)inux環(huán)境下的命令行交互任務(wù),例如scp、ssh之類需要用戶手動輸入密碼然后確認的任務(wù)。有了這個工具,定義在scp過程中可能遇到的情況,然后編寫相應(yīng)的處理語句,就可以自動地完成scp操作了
    2013-02-02
  • shell中常用的命令之diff和patch用法

    shell中常用的命令之diff和patch用法

    這篇文章主要介紹了shell中常用的命令:diff和patch,在這里diff是比較文件內(nèi)容,patch是打補丁的,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • Linux下date命令,格式化輸出,時間設(shè)置方法

    Linux下date命令,格式化輸出,時間設(shè)置方法

    下面小編就為大家?guī)硪黄狶inux下date命令,格式化輸出,時間設(shè)置方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • bash 循環(huán)中變量作用范圍的問題分析

    bash 循環(huán)中變量作用范圍的問題分析

    大家在bash編寫中,經(jīng)常需要用到循環(huán),但循環(huán)中變量作用范圍的問題有些朋友不是很懂,這里簡單分享下,方便需要的朋友
    2013-01-01
  • 使用shell腳本找出網(wǎng)站的空頁面和404錯誤頁面

    使用shell腳本找出網(wǎng)站的空頁面和404錯誤頁面

    這篇文章主要介紹了使用shell腳本找出網(wǎng)站的空頁面和404錯誤頁面,本文使用一句話實現(xiàn),需要的朋友可以參考下
    2014-11-11
  • shell腳本實現(xiàn)公司項目部署交付環(huán)境預檢查的思路

    shell腳本實現(xiàn)公司項目部署交付環(huán)境預檢查的思路

    這篇文章主要介紹了shell腳本實現(xiàn)公司項目部署交付環(huán)境預檢查的思路,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • shell腳本中/bin/bash的作用引號與括號的使用小結(jié)

    shell腳本中/bin/bash的作用引號與括號的使用小結(jié)

    shell腳本通常第一句是#!/bin/bash,在很多情況中,如果沒有設(shè)置好這一行,那么該程序很可能無法執(zhí)行,#!/bin/bash是指此腳本使用/bin/bash來解釋執(zhí)行,本文給大家介紹shell腳本中/bin/bash的作用,引號與括號的使用,感興趣的朋友一起看看吧
    2023-12-12
  • 詳談Linux寫時拷貝技術(shù)(copy-on-write)必看篇

    詳談Linux寫時拷貝技術(shù)(copy-on-write)必看篇

    下面小編就為大家?guī)硪黄斦凩inux寫時拷貝技術(shù)(copy-on-write)必看篇。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07

最新評論