日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Shell——流程控制(if、case、for、while)

發布時間:2024/4/17 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Shell——流程控制(if、case、for、while) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、if語句
    • 1.基本語法
    • 2.注意事項
    • 3.示例演示
  • 三、case語句
    • 1.基本語法
    • 2.注意事項
    • 3.示例演示
  • 二、for循環
    • 1.基本語法
    • 2.示例演示
  • 四、while循環
    • 1.基本語法
    • 2.示例演示


一、if語句

1.基本語法

語法①:
if [ condition ];then
程序
fi

語法②:
if [ 條件判斷式 ]
then
程序
fi

2.注意事項

(1)[ condition ],中括號和條件判斷式之間必須有空格
(2)if后要有空格

3.示例演示

#!/bin/bashif [ $1 -lt "5" ] thenecho "第一個參數小于5" elif [ $1 -eq "5" ] thenecho "第一個參數等于5" elseecho "第一個參數大于5" fiif [ $2 -lt "10" ];thenecho "第二個參數小于10" elif [ $2 -eq "10" ];thenecho "第二個參數等于10" elseecho "第二個參數大于10" fi

運行結果:

三、case語句

1.基本語法

case $變量名 in
“值1”)
如果變量的值等于值1,則執行程序1
;;
“值2”)
如果變量的值等于值2,則執行程序2
;;
…省略其他分支…
*)
如果變量的值都不是以上的值,則執行此程序
;;
esac

2.注意事項

(1) case行尾必須為單詞“in”,每一個模式匹配必須以右括號“)”結束。
(2) 雙分號“;;”表示命令序列結束,相當于C語言中的break。
(3) 最后的“*)”表示默認模式,相當于C語言中的default。

3.示例演示

#!/bin/bashcase $1 in1)echo "參數是1";;2)echo "參數是2";;3)echo "參數是3";;*)echo "參數不是1、2、3";; esac

運行結果:

二、for循環

1.基本語法

語法①:
for (( 初始值;循環控制條件;變量變化 ))
do
程序
done
語法②:
for 變量 in 值1 值2 值3…
do
程序
done

2.示例演示

程序1

#!/bin/bashsum1=0 sum2=0for ((i = 1; i <= 10; i++)) dosum1=$[$i+$sum1] done echo "for1 sum1 is $sum1"for j in "$*" doecho "for2 this is $j" donefor k in "$@" doecho "for3 this is $k" done

運行結果:

注意區分$*和 $@,上面的程序中將 & *和 $@都加了引號,看下面不加引號的程序:
程序2

#!/bin/bashsum1=0for ((i = 1; i <= 10; i++)) dosum1=$[$i+$sum1] done echo "for1 sum1 is $sum1"for j in $* doecho "for2 this is $j" donefor k in $@ doecho "for3 this is $k" done

運行結果:

$*代表所有參數的整體, $@代表所有參數的集合,且每個參數仍然獨立,對于 $@來說,加不加引號都一樣,但是對于 $ *來說就有差別了,看下面的程序:
程序3

#!/bin/bashfor j in 1 2 3 4 5 do echo "for2 this is $j" donefor k in "1 2 3 4 5" doecho "for3 this is $k" done

運行結果:

類比一下,有點像C語言的宏,對于用所有參數替代掉原來的$*,將程序1和程序2中的 & *用所有參數替代掉,就能類比程序3。

四、while循環

1.基本語法

while [ 條件判斷式 ]
do
程序
done
只要涉及條件判斷式,就要注意中括號和式子之間的空格

2.示例演示

#!/bin/bashsum=0 while [ $sum -lt 10 ] doecho "sum 加了一次"sum=$[$sum+1] done

運行結果:

總結

以上是生活随笔為你收集整理的Shell——流程控制(if、case、for、while)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。