您好,登錄后才能下訂單哦!
本篇內容介紹了“shell怎么輸出重定向”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
Linux Shell 重定向分為兩種,一種輸入重定向,一種是輸出重定向;從字面上理解,輸入輸出重定向就是「改變輸入與輸出的方向」的意思。
和輸出重定向一樣,Unix 命令也可以從文件獲取輸入,語法為:
command1
這樣,本來需要從鍵盤獲取輸入的命令會轉移到文件讀取內容。
注意:輸出重定向是大于號(>),輸入重定向是小于號(
實例 接著以上實例,我們需要統計 users 文件的行數,執行以下命令:
$ wc -l users 2 users
也可以將輸入重定向到 users 文件:
$ wc -l
注意:上面兩個例子的結果不同:第一個例子,會輸出文件名;第二個不會,因為它僅僅知道從標準輸入讀取內容。
command1 outfile
同時替換輸入和輸出,執行command1,從文件infile讀取內容,然后將輸出寫入到outfile中。
一般情況下,每個 Unix/Linux 命令運行時都會打開三個文件:
標準輸入文件(stdin):stdin的文件描述符為0,Unix程序默認從stdin讀取數據。 標準輸出文件(stdout):stdout 的文件描述符為1,Unix程序默認向stdout輸出數據。 標準錯誤文件(stderr):stderr的文件描述符為2,Unix程序會向stderr流中寫入錯誤信息。 默認情況下,command > file 將 stdout 重定向到 file,command
如果希望 stderr 重定向到 file,可以這樣寫:
$ command 2 > file
如果希望 stderr 追加到 file 文件末尾,可以這樣寫:
$ command 2 >> file
2 表示標準錯誤文件(stderr)。
如果希望將 stdout 和 stderr 合并后重定向到 file,可以這樣寫:
$ command > file 2>&1 或者 $ command >> file 2>&1
如果希望對 stdin 和 stdout 都重定向,可以這樣寫:
$ command file2
command 命令將 stdin 重定向到 file1,將 stdout 重定向到 file2。
“shell怎么輸出重定向”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。