Linux 資料流重定向

2021-09-08 15:04:01 字數 1332 閱讀 8901

1.三種資料流重定向

1)標準輸入(stdin):**為0,使用0《或0<

2)標準輸出(stdout):**為1,使用1>或1>>,其中**1可以省略

3)標準錯誤輸出(stderr):**為2,使用2>或2>>

2.標準輸出(stdout)重定向

我們知道linux中,cat命令可以將檔案內容輸出到螢幕。

如下所示:

我們可以使用》將輸出重定向到其他檔案,如下所示:

可以看到,使用》後,檔案內容並沒有輸出到螢幕,而是輸出到了mytxt檔案。

>>與》的區別是,>>會把輸出新增到檔案的末尾,>會清空檔案,然後將輸出寫入該檔案。

3.標準輸入(stdin)重定向

cat>mytxt,表示需要從鍵盤輸入資料到檔案。如下所示:

使用《可以將其他檔案內容輸入到該檔案,如下所示:

使用<

從鍵盤輸入時,輸入ctrl+d,可結束程序。

還可以使用《自定義結束符,如下所示:

4.標準錯誤輸出(stderr)重定向

與標準輸出(stdout)重定向使用相同。

表示重定向的是錯誤資訊。

一般用來將錯誤資訊和正確資訊分開。

5.標準輸出和標準錯誤輸出寫入同乙個檔案

使用&>可將stdout和stderr輸出到同乙個檔案,如下所示:

6.遮蔽所有輸出的方法

有時我們希望將所有的錯誤資訊或正確資訊遮蔽掉,

此時,可將輸出重定向到裝置/dev/null。如下所示:

將正確資訊吃掉,此時螢幕輸出的只有錯誤資訊了。

7.為什麼要用資料流重定向

1)需要將螢幕資訊儲存下來的時候

2)不希望其他程式干擾到當前程式的螢幕輸出

3)執行時一些已知的錯誤,我們可以用"2>/dev/null"丟掉

4)正確資訊和錯誤資訊需要分開輸出

Linux資料流重定向

開篇 當在執行shell命令時,常見的就是輸出在螢幕上,但是我們有些時候需要儲存輸出結果或者丟棄輸出錯誤,就需要重定向了。什麼是資料流重定向 當我們執行乙個命令 命令不也是程式嘛 可能由檔案或者鍵盤讀入資料,經過處理之後,再將結果輸出到螢幕上。圖中,standard output與standard ...

Linux資料流重定向

在我們日常linux命令操作中,命令執行的輸入一般是鍵盤輸入,輸出一般是輸出到螢幕,但有時候,我們可能會去讀取檔案裡但資料作為輸入,或者將輸出儲存到檔案裡 比如日誌檔案 這個時候就需要用到資料流重定向。所謂資料流重定向,就是 1 將某個命令執行後應該要出現在螢幕上的資料傳輸到其它地方,例如檔案或者諸...

Linux 資料流重定向

一般來說,如果你要執行乙個命令,這個命令可能會由檔案讀入資料,經過處理之後,再將資料輸出到螢幕上。標準輸出與標準錯誤 簡單地說,標準輸出指的是命令執行所回傳的正確的資訊,而標準錯誤輸出可以理解為命令執行失敗後,所回傳的錯誤資訊。這兩個命令預設都是輸出到螢幕上來,所以螢幕當然是混亂的。那能不能通過某些...