Shell指令碼學習(一):shell變數和一些常用命令

來源:互聯網
上載者:User
Shell指令碼學習(一):shell變數和一些常用命令

shell允許使用者建立變數儲存資料,但是不支援基礎資料型別 (Elementary Data Type)變數(如int,float.....),shell將任何賦給變數的值都解釋為一串字元,命名的規則跟C++一樣。

一、Shell有如下四種變數:1.使用者自訂的變數這個好理解,就是使用者自己定義的變數,如:X,Y,COUNT(shell中變數通常全大寫)2.位置變數(也就是命令列參數)

(1) $0:也就是指令檔名

(2) $1,$2...$9:1-9個命令列參數

(3) $#:命令列參數的個數,比C中的少一個

(4) $@:也就是"$1,$2...$9"

(5) $?:前一個命令的退出狀態,正常退出值為0,異常退出為1或2

(6) $*:我測試出來跟$@貌似是一樣的,還望大神解釋...

(7) $$:當前進程的ID號

3.預定義變數(預設變數)4.環境變數二、Shell常用命令

(1) echo "some text": 將文字內容列印在螢幕上

(2) unset:刪除變數的賦值

(3) ls: 檔案清單

(4) wc –l filewc -w filewc -c file: 計算檔案行數計算檔案中的單詞數計算檔案中的字元數

(5) cp sourcefile destfile: 檔案拷貝

(6) mv oldname newname : 重新命名檔案或移動檔案

(7) rm file: 刪除檔案

(8) grep 'pattern' file: 在檔案內搜尋字串比如:grep 'searchstring' file.txt

(9) cut -b colnum file: 指定欲顯示的檔案內容約制,並將它們輸出到標準輸出裝置比如:輸出每行第5個到第9個字元cut -b5-9 file.txt千萬不要和cat命令混淆,這是兩個完全不同的命令

(10) cat file.txt: 輸出檔案內容到標準輸出裝置(螢幕)上

(11) file somefile: 得到檔案類型

(12) read var:從標準輸入讀入一行,並將輸入賦值給變數var

(13) sort file.txt: 對file.txt檔案中的行進行排序

(14) uniq: 刪除文字檔中出現的行列比如: sort file.txt | uniq

(15) expr: 進行數學運算Example: add 2 and 3expr 2 "+" 3

(16) find: 搜尋檔案比如:根據檔案名稱搜尋find . -name filename -print

(17) tee: 將資料輸出到標準輸出裝置(螢幕) 和檔案比如:somecommand | tee outfile

(18) basename file: 返回不包含路徑的檔案名稱比如: basename /bin/tux將返回 tux

(19) dirname file: 返迴文件所在路徑比如:dirname /bin/tux將返回 /bin

(20) head file: 列印文字檔開頭幾行

(21) tail file : 列印文字檔末尾幾行

(22) test:測試3種對象(字串、整數、檔案屬性),為真返回0,假返回1

(23) sed: sed是一個基本的尋找替換程式。可以從標準輸入(比如命令管道)讀入文本,並將

結果輸出到標準輸出(螢幕)。該命令採用Regex(見參考)進行搜尋。不要和shell中的萬用字元相混淆。比如:將linuxfocus 替換為LinuxFocus :cat text.file | sed 's/linuxfocus/LinuxFocus/' > newtext.fileawk: awk 用來從文字檔中提取欄位。預設地,欄位分割符是空格,可以使用-F指定其他分割符。



相關文章

聯繫我們

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