Linux Shell學習筆記十

來源:互聯網
上載者:User

第14課時 函數

14.1 建立和使用函數

格式:name() {list;}

 

Shell函數的一個重要特徵是:可以用它們代替二進位可執行檔或Shell內建的同名命令。

例如:

cd() {chdir ${1:-$HOME}; PSI="`pwd`$"; export PSI;}

該語句用了一個函數代替了cd命令,該函數改變目錄,同時設定了主Shell提示符$PSI使其包含目前的目錄。

 

Shell指令碼中的函數變數作用範圍與其他的指令碼語言不通,例如在PHP中,當指令碼執行超出函數範圍時本內部變數就

會消失,所以不刪除也沒有問題。

而Shell中,變數被標識為全域變數,所以必須小心管理。

 

例如:

$ test(){ test=123; }

$ test

$ echo $test #輸出123

 

 

 

第15課時 文本過濾器

調用Shell指令碼常常是為了對執行的命令所產生的輸出進行操作和格式化。

1)head

2)tail

3)grep

4)sort

5)uniq

6)tr

 

15.1.1 head和tail命令

格式:head [-n lines] files

如果沒有-n lines,則顯示標準的前10行。

 

15.1.2 tail命令

格式:tail [-n lines] files

如果沒有-n lines,則顯示標準的最後10行。

-f選項,用於查看進行中寫操作的檔案。

 

 

15.2 使用grep

grep命令使使用者可以在檔案中找到包含某個特殊單詞或片語的行。

 

15.2.1 尋找單詞

格式:

grep word file

這裡檔案file指出想在哪些檔案中搜素單詞word,grep命令顯示檔案中包含單詞word的每一行。

當指定多個檔案時,grep命令在輸出行之前加上包含該行的檔案名稱。

-i選項,大小寫不相關匹配。

 

15.2.2 從STDIN(標準輸入)中讀入

當沒有指定檔案時,grep在從STDIN輸入的行中尋找匹配,這使得它可以與管道很好地連在一起。

例如:$ who | grep root

-v選項,列出與條件不符的行

 

15.2.3 行號

選項-n,結果清單返回行號

$ grep -n pipe ch15.doc

返回格式為:file:line number:line

 

15.2.4 只列出檔案名稱

有時,只需返回含有某word的檔案名稱。

可以使用-l選項。

例如:$ grep -l php *

返回:index.php

相關文章

聯繫我們

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