chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

BASH shell腳本篇—條件命令

冬至子 ? 來(lái)源:CSDN ? 作者:谷公子 ? 2023-10-11 15:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

1. If語(yǔ)句

if語(yǔ)句用于在順序執(zhí)行語(yǔ)句的流程中執(zhí)行條件任務(wù)。If語(yǔ)句通常用于在Bash腳本中做出決定。它們根據(jù)可能設(shè)置的條件來(lái)決定是否運(yùn)行一段代碼。if語(yǔ)句的語(yǔ)法格式有幾種,如下:

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

if語(yǔ)句condition中可以包含一些操作符去處理更復(fù)雜的場(chǎng)景。以下是一些最常用的操作符:

image.png

2. case語(yǔ)句

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

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

首先,case語(yǔ)句擴(kuò)展表達(dá)式并嘗試與每個(gè)包含的模式匹配。找到匹配項(xiàng)后,將執(zhí)行所有鏈接的語(yǔ)句,直到雙分號(hào)(;;)為止。在第一個(gè)匹配項(xiàng)之后,case以最后執(zhí)行的語(yǔ)句的退出狀態(tài)終止。
如果沒(méi)有匹配的模式,則case的退出狀態(tài)為零。

否則,返回狀態(tài)是已執(zhí)行語(yǔ)句的退出狀態(tài)。如果使用默認(rèn)的星號(hào)( * )模式,則在沒(méi)有匹配模式的情況下將執(zhí)行它。

3. for循環(huán)

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

可以通過(guò)兩種方式在bash腳本上應(yīng)用for循環(huán)。一種方法是for-in,另一種方法是C語(yǔ)言語(yǔ)法。for循環(huán)的語(yǔ)法:

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

當(dāng)bash的三個(gè)表達(dá)式中沒(méi)有“開(kāi)始,條件和增量”循環(huán)時(shí),它將變?yōu)闊o(wú)限循環(huán)。要終止Bash中的無(wú)限循環(huán),可以按Ctrl + C。

4. while循環(huán)

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

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

5. until循環(huán)

until循環(huán)用于根據(jù)表達(dá)式的布爾結(jié)果重復(fù)執(zhí)行一組命令。僅在表達(dá)式的值為真之前執(zhí)行命令集。因此當(dāng)表達(dá)式的計(jì)算結(jié)果為false時(shí),將迭代執(zhí)行一組命令。當(dāng)表達(dá)式首次為真時(shí),循環(huán)終止。until循環(huán)與while循環(huán)相似,但是概念相反。until循環(huán)的語(yǔ)法格式:

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

6. break和continue

可以在循環(huán)中使用break語(yǔ)句來(lái)終止循環(huán)??梢栽谘h(huán)中使用continue語(yǔ)句來(lái)跳過(guò)特定條件下的特定語(yǔ)句。它告訴Bash停止執(zhí)行循環(huán)的特定迭代并處理下一個(gè)迭代。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    183

    文章

    7634

    瀏覽量

    143940
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    373

    瀏覽量

    24920
  • for循環(huán)
    +關(guān)注

    關(guān)注

    0

    文章

    61

    瀏覽量

    2827
  • bash終端
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    2070
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

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

    提示符是“$”,在命令提示符后邊輸入命令即可和系統(tǒng)進(jìn)行交互操作。ubuntu默認(rèn)的ShellBash(Bourne Again Shell
    發(fā)表于 09-28 09:05

    【RA-Eco-RA6M4開(kāi)發(fā)板評(píng)測(cè)】移植shell實(shí)現(xiàn)命令交互

    /XLmbJn0SKoDT1aLdxHDrbg 一個(gè)超級(jí)精簡(jiǎn)高可移植的shell命令行C實(shí)現(xiàn)二. 移植移植參考上述文章,很簡(jiǎn)單只需要實(shí)現(xiàn)輸入輸出接口 即可。代碼見(jiàn)shell.c/h shell
    發(fā)表于 07-19 22:47

    Shell腳本入門指南

    Shell 是一塊包裹著系統(tǒng)核心的殼,處于操作系統(tǒng)的最外層,與用戶直接對(duì)話,把用戶的輸入, 解釋給操作系統(tǒng),然后處理操作系統(tǒng)的輸出結(jié)果,輸出到屏幕給與用戶看到結(jié)果。
    的頭像 發(fā)表于 06-03 10:47 ?836次閱讀
    <b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>入門指南

    【米爾-RK3562開(kāi)發(fā)板試用評(píng)測(cè)】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-(綠色)RUN 燈、(紅色)User燈

    shell腳本進(jìn)行命令行功能測(cè)試 控制部分硬件測(cè)試。從IO控制-燈閃開(kāi)始。 板手冊(cè)中LED例: **應(yīng)開(kāi)發(fā)板上的 RUN 燈 為例進(jìn)行LED燈測(cè)試 root@myd-yr3562:~# cd
    發(fā)表于 05-09 18:19

    樹(shù)莓派新手必看!在樹(shù)莓派上編寫(xiě)和運(yùn)行 Shell 腳本!

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

    【ELF 2學(xué)習(xí)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目-實(shí)現(xiàn)開(kāi)機(jī)起動(dòng)

    接上文【ELF 2學(xué)習(xí)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目 Linux 系統(tǒng)下 init 系統(tǒng) 大多數(shù) Linux 發(fā)行版的 init 系統(tǒng)是和 System V 相兼容
    發(fā)表于 02-11 11:24

    【ELF 2學(xué)習(xí)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈按鈕項(xiàng)目

    接上文[【ELF 2學(xué)習(xí)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目(https://bbs.elecfans.com/jishu_2475305_1_1.html) 紅綠燈按鈕
    發(fā)表于 02-06 15:39

    【ELF 2學(xué)習(xí)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目

    接上文[【ELF 2學(xué)習(xí)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-燈閃(https://https://bbs.elecfans.com/jishu_2474874_1_1.html
    發(fā)表于 02-06 11:55

    【ELF 2學(xué)習(xí)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-燈閃

    文件 有2方式調(diào)試硬件 命令行功能測(cè)試和桌面功能測(cè)試 我準(zhǔn)備在Linux5.10主板命令行啟動(dòng)后網(wǎng)絡(luò)SSH 下用shell腳本進(jìn)行控制部分硬件測(cè)試。從IO控制-燈閃開(kāi)始。 ELF 2
    發(fā)表于 01-25 15:30

    Linux 服務(wù)器檢查以及常用運(yùn)維 shell 命令

    前言 今天帶來(lái)的內(nèi)容是在華為云主機(jī) Flexus 云服務(wù)器 X 實(shí)例上操作,玩轉(zhuǎn)一些 Linux 腳本以及安裝 JDK。比如:檢查系統(tǒng)環(huán)境、安裝 JDK、使用 mkdir/touch 命令創(chuàng)建
    的頭像 發(fā)表于 01-23 18:00 ?428次閱讀
    Linux 服務(wù)器檢查以及常用運(yùn)維 <b class='flag-5'>shell</b> <b class='flag-5'>命令</b>

    嵌入式學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-自動(dòng)化點(diǎn)亮LED燈之shell點(diǎn)燈

    使用前面一節(jié)寫(xiě)的shell腳本led.sh,在終端執(zhí)行命令:root@ELF1:~# chmod 777 led.sh root@ELF1:~# ./led.sh 執(zhí)行該腳本后,三個(gè)
    發(fā)表于 12-07 08:54

    飛凌嵌入式ElfBoard ELF 1板卡-自動(dòng)化點(diǎn)亮LED燈之shell點(diǎn)燈

    使用前面一節(jié)寫(xiě)的shell腳本led.sh,在終端執(zhí)行命令:root@ELF1:~# chmod 777 led.sh root@ELF1:~# ./led.sh 執(zhí)行該腳本后,三個(gè)
    發(fā)表于 12-06 13:52

    腳本美化高手之輕松實(shí)現(xiàn)文本顏色和背景定制的酷炫Shell技巧

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

    Linux從零到精通:最簡(jiǎn)單的Shell腳本入門教程

    通過(guò)簡(jiǎn)單的命令腳本,實(shí)現(xiàn)對(duì)系統(tǒng)的靈活控制和自動(dòng)化管理。 shell腳本前言 shell腳本入門
    的頭像 發(fā)表于 12-05 09:56 ?2100次閱讀
    Linux從零到精通:最簡(jiǎn)單的<b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>入門教程

    Linux系統(tǒng)中shell命令解析

    shell是Linux系統(tǒng)的用戶界面,提供了用戶與內(nèi)核交互的一種接口,它接收用戶輸入的命令并到送到內(nèi)核去執(zhí)行,因此也被稱為L(zhǎng)inux的命令解釋器。
    的頭像 發(fā)表于 11-05 15:40 ?1198次閱讀