首頁 > 軟體

Linux IO重定向

2020-06-16 18:01:00

Linux 命令預設從標準輸入裝置(stdio)獲取輸入,將結果輸出到標準輸出裝置(stdout)顯示。一般情況下,標準輸入裝置是鍵盤。標準輸出裝置是終端(顯示器)。

一般情況下,每個命令執行時都會開啟3個檔案:

  • 標準輸入檔案(stdin):stdin的檔案描述符為0。linux程式預設從stdin讀取資料
  • 標準輸出檔案(stdout):stdout的檔案描述符為1。linux程式more相stdout輸出資料。
  • 標準錯誤檔案(stderr):stderr的檔案描述符為2。linux程式會向stderr流中寫入錯誤資訊。

輸出輸出重定向

/dev/null檔案
/dev/null 是一個特殊的檔案,寫入到它內部的內容都會被丟棄。

範例:

$ date > date.txt  #將date命令的結果重定向到檔案date.txt
$ ll >> date.txt   #將ll命令的結果追加到檔案date.txt
$ cat < date.txt   #將cat命令的輸入重定向到檔案date.txt。(即將檔案date.txt的內容作為cat的引數)
$ cat < date.txt >date2.txt #將檔案date.txt的內容重定向到檔案date2.txt中
$ cat << EOF    #將從鍵盤輸入的字串列印到顯示器,直到輸入EOF為止
$ ./test 2 > result.txt   #將執行指令碼test的錯誤資訊重定向到檔案result
$ ./test >> result.txt 2>&1  #將執行指令碼test的錯誤資訊和輸出資訊以追加的方式重定向到檔案result.txt

本文永久更新連結地址http://www.linuxidc.com/Linux/2015-05/116979.htm


IT145.com E-mail:sddin#qq.com