1. 程式人生 > >CentOS 管道符、重定向與環境變數

CentOS 管道符、重定向與環境變數

CentOS 管道符、重定向與環境變數

1. 輸入輸出重定向

檔案讀寫操作有關的重定向技術的5種模式

  1. 標準覆蓋輸出重定向
  2. 標準追加輸出重定向
  3. 錯誤覆蓋輸出重定向
  4. 錯誤追加輸出重定向
  5. 輸入重定向

知道了基礎具常用的Linux命令,那麼接下來的任務就是把多個Linux命令適當地組合到一起,使其協同工作,以便我們更高效地處理資料。

輸入重定向是指把檔案匯入到命令中,而輸出重定向則是指把原來要輸出到螢幕的資料資訊寫入到指定檔案中。

  • 標準輸入重定向(STDIN,檔案描述符為0):預設從鍵盤輸入,也可從其他檔案或命令中輸入。
  • 標準輸出重定向(STDOUT,檔案描述符為1):預設輸出到螢幕。
  • 錯誤輸出重定向(STDERR,檔案描述符為2):預設輸出到螢幕。

輸入重定向中用到的符號及其作用

符號 作用
命令 < 檔案 將檔案作為命令的標準輸入
命令 << 分界符 從標準輸入中讀入,直到遇到分界符才停止
命令 < 檔案1 > 檔案2 將檔案1作為命令的標準輸入並將標準輸出到檔案2

輸出重定向中用到的符號及其作用

符號 作用
命令 > 檔案 將標準輸出重定向到一個檔案中(清空原有檔案的資料)
命令 2> 檔案 將錯誤輸出重定向到一個檔案中(清空原有檔案的資料)
命令 >> 檔案 將標準輸出重定向到一個檔案中(追加到原有內容的後面)
命令 2>> 檔案 將錯誤輸出重定向到一個檔案中(追加到原有內容的後面)
命令 >> 檔案 2>&1 將標準輸出與錯誤輸出共同寫入到檔案中(追加到原有內容的後面)

2. 管道命令符

管道命令符的作用:把前一個命令的原本要輸出到螢幕的標準正常資料當作是後一個命令的標準輸入。

管道命令符可以在一個命令組中使用多次。“命令1|命令2|命令3”

3. 命令列的萬用字元

萬用字元 含意
* 代表匹配零個或多個字元
? 代表匹配單個字元
中括號內加數字[0-9] 代表匹配 0~9 之間的單個數字的字元
中括號內加字母[abc] 代表匹配a、b、c三個字母中任意一個字元

4. 常用的轉義字元

4個最常用的轉義字元

轉義符 含意
反斜槓(\) 使反斜槓為後面的一個變數變為單純的字串。
單引號(") 轉義其中所有的變數為單純的字串。
雙引號("") 保留其中的變數屬性,不進行轉義處理。
反引號(``) 把其中的命令執行後返回結果。

5. 重要的環境變數

10個重要的環境變數

變數名稱 作用
HOME 使用者的主目錄(即家目錄)
SHELL 使用者在使用的SHELL直譯器名稱
HISTSIZE 輸出的歷史命令記錄條數
HISTFILESIZE 儲存的歷史命令記錄條數
MAIL 郵件儲存路徑
LANG 系統語言、語系名稱
RANDOM 生成一個隨機數字
PS1 Bash直譯器的提示符
PATH 定義直譯器搜尋使用者執行命令的路徑
EDITOR 使用者預設的文字編輯器