青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

linux shell 流程控制(轉)

(peakflys注:轉載自:http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html)

linux shell有一套自己的流程控制語句,其中包括條件語句(if),循環語句(for,while),選擇語句(case)。下面我將通過例子介紹下,各個語句使用方法。

 

一、shell條件語句(if用法)

if語句結構[if/then/elif/else/fi]

 

if 條件測試語句

then

action

[elif 條件

action

else

action

]

fi

 

如果對于:條件測試語句不是很清楚,可以參考:linux shell 邏輯運算符、邏輯表達式詳解

shell命令,可以按照分號分割,也可以按照換行符分割。如果想一行寫入多個命令,可以通過“';”分割。

如:

[chengmo@centos5 ~]$ a=5;if [[ a -gt 4 ]] ;then echo 'ok';fi;                        
ok

 

實例:(test.sh)

#!/bin/sh

scores=40;
if [[ $scores -gt 90 ]]; then
    echo "very good!";
elif [[ $scores -gt 80 ]]; then
    echo "good!";
elif [[ $scores -gt 60 ]]; then
    echo "pass!";
else
    echo "no pass!";
fi;

 

image

條件測試有:[[]],[],test 這幾種,注意:[[]] 與變量之間用空格分開。

 

二、循環語句(for,while,until用法):

  • for循環使用方法(for/do/done)

語法結構:

 1.for … in 語句

for 變量 in seq字符串

do

action

done

說明:seq字符串 只要用空格字符分割,每次for…in 讀取時候,就會按順序將讀到值,給前面的變量。

實例(testfor.sh):

#!/bin/sh

for i in $(seq 10); do
    echo $i;
done;

image

seq 10 產生 1 2 3 。。。。10空格分隔字符串。

2.for((賦值;條件;運算語句))

for((賦值;條件;運算語句))

do

action

done;

實例(testfor2.sh):

#!/bin/sh

for((i=1;i<=10;i++));do
    echo $i;
done;

image

 

 

  • while循環使用(while/do/done)

while語句結構

while 條件語句

do

action

done;

實例1:

#!/bin/sh
i=10;
while [[ $i -gt 5 ]];do
    echo $i;
    ((i--));
done;

運行結果:========================

sh testwhile1.sh
10
9
8
7
6

實例2:(循環讀取文件內容:)

#!/bin/sh

while read line;do
    echo $line;
done < /etc/hosts;

 

運行結果:===================

sh testwhile2.sh


# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 centos5 localhost.localdomain localhost

  • until循環語句

語法結構:

until 條件

do

action

done

意思是:直到滿足條件,就退出。否則執行action.

實例(testuntil.sh):

#!/bin/sh

a=10;

until [[ $a -lt 0 ]];do

echo $a;

((a—));

done;

結果:

sh testuntil.sh

10
9
8
7
6
5
4
3
2
1
0

三、shell選擇語句(case、select用法)

  • case選擇語句使用(case/esac)

語法結構

case $arg in  
    pattern | sample) # arg in pattern or sample  
    ;;  
    pattern1) # arg in pattern1  
    ;;  
    *) #default  
    ;;  
esac 

說明:pattern1 是正則表達式,可以用下面字符:

                 *       任意字串
                 ?       任意字元
                 [abc]   a, b, 或c三字元其中之一
                 [a-n]   從a到n的任一字元
                 |       多重選擇

 

實例:

#!/bin/sh 

case $1 in
start | begin)
    echo "start something"  
    ;;
stop | end)
    echo "stop something"  
    ;;
*)
    echo "Ignorant"  
    ;;
esac

運行結果:======================

 

testcase.sh start
start something

  • select語句使用方法(產生菜單選擇)

語法:

select 變量name  in seq變量

do

    action

done

實例:

#!/bin/sh 

select ch in "begin" "end" "exit"
do
case $ch in
"begin")
    echo "start something"  
    ;;
"end")
    echo "stop something"  
    ;;
"exit")
    echo "exit"  
    break;
    ;;
*)
    echo "Ignorant"  
    ;;
esac
done;

運行結果:

image

說明:select是循環選擇,一般與case語句使用。

 

 

以上是shell的流程控制語句,條件,循環,選擇。 歡迎討論交流!

posted on 2015-01-29 20:03 peakflys 閱讀(106) 評論(0)  編輯 收藏 引用

<2013年1月>
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789

導航

統計

公告

人不淡定的時候,就愛表現出來,敲代碼如此,偶爾的靈感亦如此……

常用鏈接

留言簿(4)

隨筆分類

隨筆檔案

文章檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久riav二区三区| 亚洲精选成人| 亚洲精选中文字幕| 亚洲激情成人网| 亚洲欧洲日本专区| 亚洲黄一区二区三区| 亚洲激情黄色| 亚洲午夜精品久久久久久浪潮| 在线视频你懂得一区| 亚洲免费在线观看视频| 久久久国产成人精品| 亚洲永久免费观看| 欧美激情一区二区| 久久精品国产一区二区三区免费看| 亚洲一区二区精品| 久久国产手机看片| 亚洲国产精品悠悠久久琪琪| 嫩草成人www欧美| 亚洲三级毛片| 香蕉久久夜色| 免费在线国产精品| 国产精品成人一区二区三区夜夜夜| 国产精品久久一卡二卡| 在线播放一区| 亚洲永久字幕| 美女图片一区二区| 在线一区二区三区四区五区| 久久精品30| 欧美视频国产精品| 日韩一级免费| 亚洲第一区色| 亚洲欧美日韩人成在线播放| 女人天堂亚洲aⅴ在线观看| 国产精品二区影院| 亚洲人成在线播放网站岛国| 欧美一区二区视频97| 亚洲国产精品久久精品怡红院| 国产精品99久久久久久宅男| 免费精品视频| 国外成人在线| 久久国产视频网站| 免费成人在线观看视频| 亚洲视频1区2区| 欧美国产日韩免费| 在线观看成人小视频| 午夜精品福利电影| 亚洲日本中文| 免播放器亚洲一区| 精品1区2区3区4区| 久久久久久久久久久久久女国产乱 | 久久精品国产一区二区三区| 欧美午夜免费| 一本色道久久综合亚洲91| 欧美成人首页| 久久三级视频| 亚洲国内精品| 欧美激情在线观看| 免费观看在线综合| 亚洲高清久久网| 老司机一区二区| 久久久五月婷婷| 在线观看精品视频| 免费久久久一本精品久久区| 久久久久久成人| 亚洲国产美女精品久久久久∴| 毛片av中文字幕一区二区| 日韩亚洲欧美成人| 国产欧美日韩亚洲一区二区三区| 亚洲一区中文字幕在线观看| 一区二区三区高清在线| 欧美精品一区在线观看| 亚洲最新中文字幕| 国产日韩欧美在线一区| 99re6这里只有精品| 亚洲免费伊人电影在线观看av| 久久久久国产精品厨房| 久久成人免费| 亚洲国产黄色片| 亚洲精品国产系列| 欧美三级乱人伦电影| 亚洲欧美日韩国产| 欧美专区日韩视频| 久久精品30| 蜜桃精品久久久久久久免费影院| 国产日韩欧美高清免费| 久久久免费精品视频| 另类春色校园亚洲| 亚洲视频精选在线| 欧美综合国产| 亚洲精品综合在线| 亚洲欧美成人一区二区在线电影| 国产日本亚洲高清| 亚洲欧美日韩天堂一区二区| 亚洲一区在线免费观看| 国产精品一页| 欧美日韩一区二区欧美激情| 国产精品99久久久久久有的能看| 亚洲视频axxx| 亚洲韩国青草视频| 亚洲在线1234| 亚洲欧洲一级| 欧美一区二区三区日韩| 日韩视频在线一区二区| 欧美一二三区在线观看| 一本大道久久精品懂色aⅴ| 午夜宅男欧美| 亚洲少妇一区| 欧美成人中文| 久久综合国产精品台湾中文娱乐网| 欧美精品在线观看| 蜜臀av国产精品久久久久| 欧美特黄a级高清免费大片a级| 久久久久国产精品www| 欧美午夜视频在线观看| 欧美成人视屏| 国产一区二区三区日韩欧美| 亚洲电影免费| 狠狠色丁香婷婷综合影院| 一区二区三区免费网站| 一区二区三区精密机械公司| 欧美一区二区三区的| 国产精品av久久久久久麻豆网| 亚洲女性裸体视频| 欧美成人一品| 在线综合欧美| 亚洲国产日韩欧美一区二区三区| 亚洲欧洲日本一区二区三区| 国产亚洲激情在线| 欧美午夜理伦三级在线观看| 在线亚洲+欧美+日本专区| 亚洲国产精品小视频| 欧美专区中文字幕| 欧美亚洲一区二区在线| 欧美另类高清视频在线| 欧美激情一区在线| 亚洲黄色小视频| 久久在线免费| 久久精品亚洲一区| 亚洲国产综合视频在线观看| 久久激情综合| 久久久久久久一区二区三区| 国产精品国产福利国产秒拍| 亚洲日本激情| 亚洲私人黄色宅男| 欧美色综合天天久久综合精品| 亚洲人www| 亚洲视频在线观看一区| 欧美三级电影网| 亚洲欧美国产日韩中文字幕| 欧美一区深夜视频| 国际精品欧美精品| 久久久久国色av免费观看性色| 久久国产精彩视频| 欧美一区二区视频在线观看| 久久免费高清视频| 亚洲国产日韩精品| 欧美日韩大片| 性色一区二区三区| 欧美成人久久| 日韩视频免费| 国产精品社区| 老鸭窝亚洲一区二区三区| 欧美电影免费| 亚洲免费在线观看| 黄色欧美成人| 欧美午夜精品电影| 久久久久国产一区二区三区| 亚洲免费精品| 久久免费视频网| 在线亚洲免费| 亚洲高清二区| 国产精品三区www17con| 免费高清在线视频一区·| 亚洲视频一起| 亚洲成色777777女色窝| 亚洲综合色噜噜狠狠| 在线观看亚洲a| 国产精品日韩专区| 欧美高清在线一区| 亚洲国产精品久久久久| 欧美成人精品影院| 亚洲国产成人精品久久久国产成人一区| 亚洲一区久久| 亚洲一区二区三| 国产日韩欧美精品在线| 欧美日韩精品综合在线| 欧美日本韩国一区| 一区二区欧美国产| 欧美有码在线观看视频| 一区二区三区色| 国产精品日韩久久久| 亚洲精品在线三区| 免费欧美视频| 午夜精品亚洲一区二区三区嫩草| 亚洲国产裸拍裸体视频在线观看乱了 | 一区福利视频| 欧美视频一区二区在线观看| 另类亚洲自拍| 久久久久成人网| 欧美日韩在线观看一区二区三区|