重定向解釋

2021-05-22 10:56:27 字數 1230 閱讀 2228

unix

系統中,

任何命令,包括

shell本身,

預設情況下總是讀取來自終端鍵盤輸入的資料

,這個資料輸入源通常稱作標準輸入

(stdin),

其檔案描述符為0.

預設情況下

,命令的處理結果總是輸出到使用者終端的螢幕上

,這個輸出目的通常稱作標準輸出

(stdout),

其檔案描述符為1.

另外,在命令的執行期間

,如果出現問題

,相應的錯誤資訊預設情況下也將輸出到使用者的終端螢幕上

,這個輸出目的通常稱作標準錯誤輸出

(stderr),

其檔案描述符為2.

有上面的基礎知識後

,我們現在來討論

linux/unix

系統命令行的精妙之處

:輸入輸出重定向.

例如:ls -l > fname

上述命令就是把

ls命令的返回結果輸出到

fname

這個檔案中去

,但是要注意的事情是輸出前將清空原檔案內容

(如果原檔案存在).

使用ls -l >>fname

這個命令是將結果附加到原檔案後面.

grep root < fname

上述命令是在

fname

這個檔案中尋找帶有

root

這個欄位的內容

,是把標準輸入重定向為檔案輸入.

上述命令其實是簡化後的形式

,其原始形式為

0 < fname

把標準輸入重定向到指定檔案中

1 > fname

把標準輸出重定向到檔案中

2 > fname

把標準錯誤輸出重定向到檔案中

還有乙個重要的用法

i>& j

把檔案描述符

i表述的輸出檔案重定向到檔案描述符

j表示的檔案

例如

:

command_1 2 >& 1

把這個錯誤命令的標準錯誤輸出重定向到標準輸出

其原理是用指標實現的.

解釋標準輸入重定向

參考文章 標準輸入一般指的是鍵盤輸入。多數命令能接收標準輸入 如果cat不加引數,在收到 eof ctrl d 之前,它會一直監聽標準輸入 鍵盤 列印到標準輸出 顯示器 cat hello there hello there say it again say it again ctrl d cat ...

node 重定向 express 重定向

服務端重定向對非同步請求無效 如何通過伺服器讓客戶端重定向 1.狀態碼設定為302 臨時重定向,301永久重定向 瀏覽器會記住 當再次請求相同位址的時候,瀏覽器不會重新請求該位址,會直接跳轉上一次請求該位址時的重定向位址 res.statuscode 2.在響應頭中通過 location 告訴客戶端...

輸入重定向,正確輸出重定向,錯誤輸出重定向

一 標準輸入 stdin a.輸入重定向 標準輸入 作用 將原先鍵盤輸入的內容改由檔案內容代替 root wenwen cat test.txt asdas asdas asdas 按crtl d 退出 將network內容匯入到test.txt中去 root wenwen cat test.txt...