shell指令碼學習(二)

來源:互聯網
上載者:User

標籤:command   export   解譯器   java   認證   

linux-Bash 指令碼編輯 編輯語言的類型 

   解釋型語言(Bash Python perl) 

 定義: 通過解譯器來讀入我們編寫的代碼,將其轉換為系統相關命令。 執行優點: 可以很容易處理像檔案或者目錄這樣的對象 缺點: 執行速度慢

  編譯型語言:(c ;c++; java) 定義: 通過編譯。然後再進行執行 優點:   負責底層相關,例如位元組、認證、浮點這樣對象。 Bash 指令碼以.sh結尾 Python 以.py 結尾 

####### cat /etc/shells  

       /bin/bash 

#!/bin/bash

 PAH export PATH command

 exit 0   

顯示命令執行狀態值:echo $? 

 0:正常執行 1:錯誤   126:系統調用發生錯誤   127:系統無法識別命令   130: ctrl+c 

 檢查指令碼文法:   bash -n   file.sh 檢查指令碼;  

 bash   -x file.sh 指令碼的debug調試; 

Bash指令碼的執行方式: 1.bash xxxx

 2.添加執行許可權(x)     ./file.sh

 3.~/.bashrc 

cat /etc/redhat-release 查看linux的版本、

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/4D/F8/wKiom1ReAXLghimrAAFwbGEvcmU131.jpg" title="aaa.png" alt="wKiom1ReAXLghimrAAFwbGEvcmU131.jpg" />


 bash的變數:

#hu=linux

echo ‘hu‘

bash的基本迴圈文法

一、for

    1、for 變數 in 列表

 do

     迴圈體

 done

例如:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/4D/F8/wKiom1ReBB3g6RizAADDv9-Fj28107.jpg" title="vv.png" alt="wKiom1ReBB3g6RizAADDv9-Fj28107.jpg" />650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/4D/F8/wKiom1ReBEDhyxqxAABjzPcwFpg525.jpg" title="ww.png" alt="wKiom1ReBEDhyxqxAABjzPcwFpg525.jpg" />


這裡的列表的產生方式有多種:

I、{startnumber..endnumber}

              例如:{1..100},1到100

II、使用seq命令

       seq startnumber  step endnumber

       使用seq時,要使用命令引用

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/4D/F7/wKioL1ReBcajrH5cAACzTLuS7MY435.jpg" title="qqqq.png" alt="wKioL1ReBcajrH5cAACzTLuS7MY435.jpg" />


650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/4D/F8/wKiom1ReBbeA5bSnAACbdo2qN-g381.jpg" title="sss.png" alt="wKiom1ReBbeA5bSnAACbdo2qN-g381.jpg" />

這個指令碼就是產生數字為奇數的檔案,即file1、file3,seq的命令引用是採用反引號的,步進值為2

III、也可以是所有的位置變數[email protected]

IV、也能以命令的方式產生

     2、for ((變數初始化;條件判斷;變數變化))

         do

              迴圈體

         done

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/4D/F7/wKioL1ReB82TT9u2AACvB0PJbMg479.jpg" title="dd.png" alt="wKioL1ReB82TT9u2AACvB0PJbMg479.jpg" />

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/4D/F8/wKiom1ReB43xynXMAADpXB4BhC0663.jpg" title="hu.png" alt="wKiom1ReB43xynXMAADpXB4BhC0663.jpg" />

這個指令碼會輸出1-10,這些數字,初始變數i為1,條件判斷是i小於等於10時,執行其迴圈體,大10則跳出迴圈體,每迴圈一次,i的值會自動加1。

二、while

    1、while 條件

      do

          迴圈體

      done

示範:計算1--100之內所有整數之和:

650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/4D/F9/wKiom1ReDZXwYnJIAADH5aABdgM461.jpg" title="rrre.png" alt="wKiom1ReDZXwYnJIAADH5aABdgM461.jpg" />


650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/4D/F7/wKioL1ReDkOz8LSiAACQN7_DQGg292.jpg" title="ee.png" alt="wKioL1ReDkOz8LSiAACQN7_DQGg292.jpg" />


就寫這麼一點吧。。有時間再繼續複習、、、

本文出自 “斷腸人在天涯” 部落格,請務必保留此出處http://8649605.blog.51cto.com/8639605/1574453

shell指令碼學習(二)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.