在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

BASH shell腳本篇—條件命令

冬至子 ? 來源:CSDN ? 作者:谷公子 ? 2023-10-11 15:21 ? 次閱讀

這篇文章介紹下BASH shell中的條件相關的命令,包括:if, case, while, until, for, break, continue。

1. If語句

if語句用于在順序執行語句的流程中執行條件任務。If語句通常用于在Bash腳本中做出決定。它們根據可能設置的條件來決定是否運行一段代碼。if語句的語法格式有幾種,如下:

# 1. if語句基本格式:
# 注意:觀察第一行中使用的空格,在第一行末尾使用分號。兩者都必須使
#       用,if條件語句以fi結尾
if [ condition ];  
then  
statements  
fi
 
# 2. if-else語法格式:
if [ condition ];  
then  
   < if block commands >  
else  
   < else block commands >  
fi
 
 
# 3. else-if語法格式:
if [ condition ];  
then  
< commands >  
elif [ condition ];  
then  
< commands >  
else  
< commands >  
fi

if語句condition中可以包含一些操作符去處理更復雜的場景。以下是一些最常用的操作符:

image.png

2. case語句

Bash case語句是具有許多ELIF元素的IF-THEN-ELSE的最簡單形式。使用case語句使bash腳本更具可讀性,并且更易于維護。它通常用于簡化具有多種不同選擇的復雜條件。case語句的語法如下:

case expression in  
    pattern_1)  
        statements  
        ;;  
    pattern_2)  
        statements  
        ;;  
    pattern_3|pattern_4|pattern_5)  
        statements  
        ;;  
    pattern-n)  
        statements  
        ;;  
    *)  
        statements  
        ;;  
esac
# 包含語句的模式稱為子句,并且必須以雙分號(;;)終止
# 星號(*)用作定義默認情況的最終模式。當用作最后一種情況時,它用作默認情況

首先,case語句擴展表達式并嘗試與每個包含的模式匹配。找到匹配項后,將執行所有鏈接的語句,直到雙分號(;;)為止。在第一個匹配項之后,case以最后執行的語句的退出狀態終止。
如果沒有匹配的模式,則case的退出狀態為零。

否則,返回狀態是已執行語句的退出狀態。如果使用默認的星號( * )模式,則在沒有匹配模式的情況下將執行它。

3. for循環

bash shell腳本也支持for循環以執行重復性任務。它有助于在字符串中的一系列單詞或數組中的元素上迭代一組特定的語句。例如,可以多次運行UNIX命令(或任務),也可以僅使用for循環讀取和處理命令列表。

可以通過兩種方式在bash腳本上應用for循環。一種方法是for-in,另一種方法是C語言語法。for循環的語法:

# 方法1,list可以包含數字或字符串等,以空格分隔
for variable in list  
do  
commands  
done
# 方法2
for (( expression1; expression2; expression3 ))  
do  
commands  
done

當bash的三個表達式中沒有“開始,條件和增量”循環時,它將變為無限循環。要終止Bash中的無限循環,可以按Ctrl + C。

4. while循環

while循環可以定義為控制流語句,只要所應用的條件為真,該語句就允許重復執行給定的命令集。例如,可以運行多次echo命令,也可以僅逐行讀取文本文件,然后使用Bash中的while循環處理結果。while循環格式:

while [ expressions ];  
do  
commands;  
multiple commands;  
done
# expressions可以是單條件或多條件

5. until循環

until循環用于根據表達式的布爾結果重復執行一組命令。僅在表達式的值為真之前執行命令集。因此當表達式的計算結果為false時,將迭代執行一組命令。當表達式首次為真時,循環終止。until循環與while循環相似,但是概念相反。until循環的語法格式:

until [ expressions ];  
do  
command1  
command2  
. . .  
. . .
commandN  
done

6. break和continue

可以在循環中使用break語句來終止循環。可以在循環中使用continue語句來跳過特定條件下的特定語句。它告訴Bash停止執行循環的特定迭代并處理下一個迭代。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7624

    瀏覽量

    139517
  • Shell
    +關注

    關注

    1

    文章

    369

    瀏覽量

    23785
  • for循環
    +關注

    關注

    0

    文章

    61

    瀏覽量

    2651
  • bash終端
    +關注

    關注

    0

    文章

    7

    瀏覽量

    2031
收藏 人收藏

    評論

    相關推薦

    樹莓派新手必看!在樹莓派上編寫和運行 Shell 腳本

    在本教程中,我將討論Shell腳本的基礎知識、它們的用途以及如何在RaspberryPi上編寫和運行Shell腳本。什么是Shell
    的頭像 發表于 03-25 09:28 ?148次閱讀
    樹莓派新手必看!在樹莓派上編寫和運行 <b class='flag-5'>Shell</b> <b class='flag-5'>腳本</b>!

    【ELF 2學習板試用】命令行功能測試-shell腳本進行IO控制-紅綠燈按鈕項目

    接上文[【ELF 2學習板試用】命令行功能測試-shell腳本進行IO控制-紅綠燈項目(https://bbs.elecfans.com/jishu_2475305_1_1.html) 紅綠燈按鈕
    發表于 02-06 15:39

    【ELF 2學習板試用】命令行功能測試-shell腳本進行IO控制-燈閃

    文件 有2方式調試硬件 命令行功能測試和桌面功能測試 我準備在Linux5.10主板命令行啟動后網絡SSH 下用shell腳本進行控制部分硬件測試。從IO控制-燈閃開始。 ELF 2
    發表于 01-25 15:30

    腳本美化高手之輕松實現文本顏色和背景定制的酷炫Shell技巧

    字符串 ?33[0m" 或者echo -e "?33[字背景顏色;字體顏色m;ascii碼m 字符串 ?33[0m 字符串(can null) " 格式說明 shell腳本中echo命令是內容顯示,
    的頭像 發表于 12-06 10:38 ?493次閱讀
    <b class='flag-5'>腳本</b>美化高手之輕松實現文本顏色和背景定制的酷炫<b class='flag-5'>Shell</b>技巧

    Linux從零到精通:最簡單的Shell腳本入門教程

    通過簡單的命令腳本,實現對系統的靈活控制和自動化管理。 shell腳本前言 shell腳本入門
    的頭像 發表于 12-05 09:56 ?1166次閱讀
    Linux從零到精通:最簡單的<b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>入門教程

    Linux系統中shell命令解析

    shell是Linux系統的用戶界面,提供了用戶與內核交互的一種接口,它接收用戶輸入的命令并到送到內核去執行,因此也被稱為Linux的命令解釋器。
    的頭像 發表于 11-05 15:40 ?642次閱讀

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-shell腳本編寫之test命令

    test命令用于測試某個條件是否成立,它可以進行數值、字符和文件三個方面的測試。在shell文件中輸入命令,通過特定的參數可以對數值、字符串進行比較,如下參數及示例。1、數值比較參數舉
    發表于 09-06 10:31

    飛凌嵌入式ElfBoard ELF 1板卡-shell腳本編寫之test命令

    test命令用于測試某個條件是否成立,它可以進行數值、字符和文件三個方面的測試。在shell文件中輸入命令,通過特定的參數可以對數值、字符串進行比較,如下參數及示例。1、數值比較參數舉
    發表于 09-05 09:09

    shell腳本執行的三種方式及區別

    在Linux系統中,Shell腳本是一種非常實用的工具,用于自動化執行一系列命令Shell腳本可以大大提高工作效率,簡化復雜的任務。在這篇
    的頭像 發表于 08-30 15:24 ?1817次閱讀

    執行shell腳本的方式包括什么

    執行Shell腳本的方式有很多種,以下是一些常見的方法: 直接運行腳本文件 在命令行中,可以直接使用腳本文件的路徑來運行
    的頭像 發表于 08-30 15:17 ?537次閱讀

    shell具有的功能和特點

    是執行命令。用戶可以在 Shell 提示符下輸入命令Shell 會解析命令并將其傳遞給操作系統執行。S
    的頭像 發表于 08-30 14:48 ?1053次閱讀

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-shell腳本編寫之本地腳本的編寫和執行

    :3)shell應用程序執行shell腳本也可直接使用shell應用程序進行執行。我們前面說過,我們指定的shell應用為/bin/
    發表于 08-29 10:51

    shell腳本編寫之本地腳本的編寫和執行

    用來指定使用的shell應用;echo "my first shell !"為腳本中編寫的命令代碼。2、執行在執行腳本
    發表于 08-28 09:36

    嵌入式學習-shell介紹

    本使用的Shell有可能不同,但是基本的特性還是一樣的:一、支持內置命令可直接使用;二、支持命令組合成新的復合命令;三、支持TAB鍵補齊;四、支持后臺運行;五、支持
    發表于 08-16 09:13

    shell基本介紹及常用命令shell介紹

    本使用的Shell有可能不同,但是基本的特性還是一樣的:一、支持內置命令可直接使用;二、支持命令組合成新的復合命令;三、支持TAB鍵補齊;四、支持后臺運行;五、支持
    發表于 08-15 09:28
    主站蜘蛛池模板: 日干夜干天天干 | 天天射色综合 | 天天性综合 | 国产一区二区三区在线观看影院 | 国产精品欧美一区二区三区不卡 | 免费h视频网站 | aaa亚洲| 国模人体一区二区三区 | 天天躁夜夜躁狠狠躁2024 | 天天操天天舔天天干 | 久操视频免费观看 | haodiaose在线精品免费观看 | 特级毛片免费视频观看 | 波多野结衣久久国产精品 | 亚洲插| 日本在线视频二区 | 国产午夜爽爽窝窝在线观看 | 日本成人黄色网址 | 色国产视频 | 四虎国产精品免费久久影院 | 国产美女在线精品免费观看 | 国产一区二区三区欧美精品 | 美女扒开腿让男生桶爽网站 | 国产毛片一区二区三区精品 | 波多野结衣一级毛片 | 夜恋秀场欧美成人影院 | 97国内精品久久久久久久影视 | 国产综合在线视频 | 四虎国产精品影库永久免费 | 国产三级a三级三级野外 | 激情都市亚洲 | 国产美女流出白浆在线观看 | 国语对白一区二区三区 | 成人午夜精品久久久久久久小说 | 亚洲综合一区二区三区 | 中文字幕精品一区二区三区视频 | 黄网站在线播放 | 宅宅午夜亚洲精品 | 久久婷婷国产一区二区三区 | 四月婷婷七月婷婷综合 | 午夜免费啪 |