Linux入門篇(五)——Shell(一),linux入門篇shell

來源:互聯網
上載者:User

Linux入門篇(五)——Shell(一),linux入門篇shell

這一系列的Linux入門都是本人在《鳥哥的Linux私房菜》的基礎上總結的基本內容,主要是記錄下自己的學習過程,也方便大家簡要的瞭解

Linux Distribution是Ubuntu而不是書本上推薦的CentOS,建議裝雙系統,不要使用虛擬機器。

代碼在github上:Linuxpractice

其他內容:

Linux入門篇(一)——基本命令Linux入門篇(二)——檔案Linux入門篇(三)——檔案與目錄

 

Linux入門篇(四)——Vim的使用與Bash

 

Shell

一、shell的變數功能

  • 變數的顯示 $ echo
  • 變數的修改 $ 變數名=變數值
  • 環境變數功能: $ env 可以列舉出當前shell環境下所有的環境變數。

環境變數的舉例:

  • HOME:代表主資料夾
  • SHELL:目前環境代表的shell程式
  • HISTSIZE:可紀錄的曆史命令的條數
  • MAIL:讀取的郵件檔案
  • PATH:執行檔案查詢路徑
  • LANG:語係數據
  • RANDOM:隨機數變數

變數的有效範圍:一般情況下,父進程的自訂變數無法在子進程內使用,除非通過export將其變為環境變數,否則就是自訂變數。(與記憶體配置的記憶塊有關)

  • read 讀取來自鍵盤輸入的變數: $ read [-pt] variable
  • declare和typeset是一樣的功能用來聲明:$ declare [-aixr] variable

                      -a: variable為數群組類型

                      -i: variable為integer類型

                      -x:用法與export一致

                      -r:變數設定為readonly,唯讀類型,不可以修改

陣列變數類型:array

  • 設定方法:   $ var [index]=context  bash的數組下標是從0開始的。

          數組名 下標  變數值

  • 讀取方式: $ echo ${var[1]}

變數內容的刪除、替換:

  •    變數設定方法                      說明

    ${變數#關鍵字}           若變數內容從頭開始資料符合”關鍵字“,則將符合的最短資料刪除。

    ${變數##關鍵字}              若變數內容從頭開始資料符合”關鍵字“,則將符合的最長資料刪除。

    ${變數%關鍵字}             若變數內容從尾開始資料符合”關鍵字“,則將符合的最短資料刪除。

    ${變數%%關鍵字}          若變數內容從尾開始資料符合”關鍵字“,則將符合的最長資料刪除。

    ${變數/舊字串/新字串}            替換第一個符合的字串。

    ${變數//舊字串/新字串}             替換全部符合的字串。

  •   變數的測試與內容的替換

      new_var=${old_var-content}

  新變數    關鍵字 舊變數 變數內容

 

三、Bash Shell作業環境

 

一個命令被執行時,命令執行的順序是:

  • 以相對/絕對路徑執行命令。
  • 由alias找到該命令並執行。
  • 由bash內建的(builtin)命令執行。
  • 通過$PATH變數的順序找到第一個來執行。

 

聯繫我們

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