shell基礎知識學習一

來源:互聯網
上載者:User

第一個shell指令碼程式。vi建立檔案test.sh,並賦予執行許可權

 

#!/bin/shecho 'hello word !'

 

執行結果:hello word !

shell指令碼結構:以#!/bin/sh開始,然後換行下面的就是程式主體。當然這裡只是以#!/bin/sh為例。

瞭解學習一門新的語言,我一般都是遵循著這麼個過程。

1、變數以及變數賦值

2、流程式控制制

3、資料集操作:集合數組

4、類、方法調用

熟悉了以上的東西,對這門語言就有了最基本的掌握。

一、變數

所有的變數都是字串,且不需要聲明變數。

first='OKOKOK'

需要注意的是等號的左右兩邊沒有空格。

引用:${first}或者${first}

#把first的值賦給secondsecond=$first  

 

 

first=2echo 'this is ${first}'

執行結果:this is 2

 

二、流程式控制制

1、if判斷

if...then.....elif....then.....else....fi

格式如上。

與java不同的是,java的條件用()包起來,shell的用[ ] 或者()方括弧。尤其要注意方括弧的前後都要有空格。

舉個實際例子:

a='1'if [ ${a} -eq '1' ]then echo 'this is 1'elif [ ${a} -eq '2' ]then echo 'this is 2'else echo 'this is other'fi

 

執行結果:this is 1

以上程式的就是比較變數是否等於某個值。

 

下面是複合條件的if判斷

a='3'if [[ ${a} -eq '1' ]] || [[  ${a} -eq '3' ]]then echo 'this is 1'elif [ ${a} -eq '2' ]then echo 'this is 2'else echo 'this is other'fi
 
執行的結果:this is 1
在java中就是if(a.equals("1") || a.equals("3")),但是這裡不是。
下面這種也是可以:
if [ ${a} -eq '1' -o   ${a} -eq '3' ]
-o:就是 ||、或者
 
說到流程判斷就要用到運算式和邏輯運算子,下一篇會寫到相應資訊。
 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.