Shell--數據流重定向
數據流重定向就是將某個命令執行後應該要出現在屏幕上的數據傳輸到其他地方
標準
1、標準輸入(stdin):代碼為0,使用<或<<
2、標準輸出(stdout):代碼為1.,使用>或>>
3、標準錯誤輸出(stderr):代碼為2,使用2>或2>>
Standard output 與 standard error output
簡單地說,標準輸出值的是命令執行所回傳的正確的信息,而標準錯誤輸出可以理解為命令執行失敗後,所回傳的錯誤信息
範例:
正確與錯誤數據寫入兩個不同的文件中
[email protected]:/mnt/c/Users/vivi# find /home -name .bashrc > list_right 2> list_error
正確與錯誤數據寫入同一個文件中
[email protected]:/mnt/c/Users/vivi# find /home -name .bashrc > list 2>&1
[email protected]:/mnt/c/Users/vivi# find /home -name .bashrc &> list
/dev/null垃圾桶黑洞設備與特殊寫法
如果我們知道錯誤信息會發生,所以要將錯誤信息忽略掉而不顯示或存儲呢?這個時候黑洞設備/dev/null就很重要了,這個/dev/null可以吃掉任何導向這個設備的信息
範例:
[email protected]
Standard input:<與<<
以最簡單的說法來說,就是將原本需要有鍵盤輸入的數據改有文件內容來替代,下面我們由cat命令操作來了解一下什麽叫做鍵盤輸入吧
範例:利用cat命令來創建一個文件的簡單流程
[email protected]:/mnt/c/Users/vivi# cat > catfile
testing
cat file test
<==這裏按下【ctrl】+d來離開
下面用純文本文件代替鍵盤輸入
範例:
[email protected]