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

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 閱讀(112) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2025年12月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

導航

統計

公告

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

常用鏈接

留言簿(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>
            日韩小视频在线观看| 欧美一二三区精品| 久久久精品国产免费观看同学| 欧美大香线蕉线伊人久久国产精品| 一区二区三区日韩| 蜜月aⅴ免费一区二区三区 | 91久久久久久久久| 亚洲天堂av在线免费观看| 欧美福利一区| 激情亚洲网站| 欧美一区二区在线免费播放| 亚洲免费福利视频| 免费国产一区二区| 狠狠色综合色综合网络| 欧美日韩国产成人在线| 久久伊人一区二区| 国产欧美日韩伦理| 亚洲小视频在线观看| 亚洲电影av在线| 久久精品国产91精品亚洲| 国产精品午夜av在线| 亚洲视频在线免费观看| 亚洲国产精品传媒在线观看 | 亚洲欧洲精品一区二区三区不卡| 久久久久久久999| 亚洲欧美成人一区二区在线电影 | 久久婷婷av| 亚洲欧美日韩中文视频| 国产精品sss| 亚洲私人影吧| 日韩一区二区福利| 欧美喷水视频| 99re6这里只有精品| 亚洲国产综合在线| 欧美超级免费视 在线| 亚洲国产日韩欧美在线99| 蜜桃视频一区| 久久视频在线看| 一区二区在线观看av| 麻豆精品在线观看| 久久久久久久一区二区| 在线观看欧美成人| 欧美18av| 欧美成人第一页| 亚洲精选成人| 亚洲国产婷婷| 亚洲精品一二三区| 亚洲人成毛片在线播放| 欧美成人首页| 99re6这里只有精品| 夜夜嗨av一区二区三区中文字幕| 欧美人牲a欧美精品| 一区二区三区日韩欧美精品| 亚洲精品一二区| 欧美性色视频在线| 性亚洲最疯狂xxxx高清| 欧美一区二区三区免费大片| 狠狠色伊人亚洲综合网站色| 能在线观看的日韩av| 欧美96在线丨欧| 一区二区免费在线播放| 亚洲先锋成人| 国内精品久久久久久久果冻传媒| 久久久蜜桃一区二区人| 鲁大师影院一区二区三区| 日韩天堂在线观看| 亚洲午夜视频在线观看| 国产一区二区三区免费不卡| 免费亚洲一区二区| 久久夜色精品国产| 一区二区久久久久| 亚洲综合精品四区| 尤物yw午夜国产精品视频明星| 美女露胸一区二区三区| 欧美大秀在线观看| 亚洲欧美另类中文字幕| 久久精品亚洲一区二区| 亚洲三级免费| 亚洲一区日本| 亚洲电影av在线| 亚洲靠逼com| 久久精品国产成人| 男女精品网站| 亚洲专区一二三| 久久精品欧洲| 一区二区三区四区五区精品| 亚洲欧美日韩国产一区| 亚洲福利视频一区| 99精品国产99久久久久久福利| 国产亚洲一区二区三区在线观看 | 亚洲一区二区三区免费在线观看 | 一本综合久久| 午夜精彩视频在线观看不卡 | 久久精品九九| 毛片一区二区三区| 亚洲欧美变态国产另类| 久久视频国产精品免费视频在线| 亚洲午夜女主播在线直播| 欧美在线免费观看亚洲| 99国产精品| 欧美伊久线香蕉线新在线| 99riav久久精品riav| 欧美制服丝袜| 亚洲无线一线二线三线区别av| 久久九九免费视频| 亚洲综合精品一区二区| 久久久久**毛片大全| 亚洲一区精品电影| 久久久久久**毛片大全| 欧美日韩精品一区视频| 国模一区二区三区| 日韩视频一区二区三区| 在线欧美不卡| 亚洲欧美韩国| av成人黄色| 久久午夜羞羞影院免费观看| 欧美一区二区精美| 欧美日韩国产一中文字不卡| 免费在线播放第一区高清av| 国产精品综合不卡av| 亚洲国产一区二区在线| 国内精品一区二区| 亚洲午夜伦理| 亚洲精品在线免费| 久久riav二区三区| 小嫩嫩精品导航| 欧美日韩国产精品成人| 欧美激情a∨在线视频播放| 国内精品久久久久伊人av| 亚洲天堂成人在线视频| 日韩西西人体444www| 久久久人人人| 欧美淫片网站| 国产精品国产三级国产a| 亚洲欧洲在线一区| 亚洲国产裸拍裸体视频在线观看乱了| 欧美在线观看视频一区二区三区 | 欧美在线综合| 欧美影院成人| 国产精品欧美激情| 一本色道久久综合狠狠躁篇怎么玩| 亚洲欧洲在线一区| 久久久午夜视频| 久久久久久久久久久成人| 国产免费亚洲高清| 亚洲日本国产| 亚洲性线免费观看视频成熟| 国产精品99久久久久久人| 欧美韩国在线| 欧美国产亚洲精品久久久8v| 精品动漫一区| 久久久久久国产精品一区| 久久三级福利| 黄色另类av| 久久久久在线| 麻豆freexxxx性91精品| 黄色av成人| 久久久久久午夜| 免费成人高清在线视频| 亚洲第一偷拍| 免费黄网站欧美| 欧美激情精品久久久久久大尺度 | 亚洲一级二级在线| 午夜欧美大尺度福利影院在线看| 欧美丝袜一区二区| 亚洲午夜一区二区| 欧美伊人久久| 国产一区欧美日韩| 久久婷婷色综合| 亚洲二区免费| 一本色道久久88精品综合| 欧美日韩精品免费看| 亚洲视频第一页| 欧美一区二区三区四区夜夜大片| 国产精品一区二区三区免费观看| 亚洲欧美bt| 毛片av中文字幕一区二区| 91久久久久久久久| 欧美激情在线狂野欧美精品| 亚洲美女中文字幕| 羞羞视频在线观看欧美| 国模精品一区二区三区色天香| 美日韩精品免费观看视频| 亚洲欧洲一区二区在线观看| 亚洲一区网站| 国产一区二区三区在线观看免费 | 亚洲愉拍自拍另类高清精品| 国产精品有限公司| 久久久999精品| 亚洲高清资源综合久久精品| 一本色道久久综合| 国产精品第一区| 欧美一区二区三区日韩视频| 欧美va天堂在线| 亚洲无人区一区| 国产在线观看一区| 欧美激情成人在线视频| 亚洲婷婷综合色高清在线| 榴莲视频成人在线观看| 99香蕉国产精品偷在线观看|