歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux下Bash的數據流重導向,stdin,stdout,stderr

Linux下Bash的數據流重導向,stdin,stdout,stderr

日期:2017/2/28 16:05:28   编辑:Linux教程

標准輸入 stdin: 代碼0,使用<或<<

標准輸出 stdout: 代碼1,使用>或>> 1> 1>>

標准錯誤輸出 stderr 代碼2,使用2>或2>>

1個尖括號為覆蓋,2個尖括號為累加


輸出的意思就是將原本要輸出到屏幕上的東西輸出到文件或者設備上

例:

ll ~ > ~/rootfile 屏幕不輸出信息,而是將信息輸出到了文件中


標准輸出和標准錯誤輸出的理解

1>: 以覆蓋的方式將正確數據輸出到指定的文件或設備上

1>>: 以累加的方式將正確數據輸出到指定的文件或設備上

2>: 以覆蓋的方式將錯誤數據輸出到指定的文件或設備上

2>>: 以累加的方式將錯誤數據輸出到指定的文件或設備上


將正確信息錯誤信息輸出的方法

find /home -name .bashrc > rightfile 2> errorfile

就是同時指定正確和錯誤時的輸出文檔


垃圾桶黑洞/dev/null

/dev/null可以干掉任何扔到這個裝置的信息

find /home -name .bashrc 2> /dev/null


將正確錯誤信息寫入同一文件中

find /home -name .bashrc > list 2>&1

find /home -name .bashrc &> list


標准輸入:將原本需要由鍵盤輸入的數據改由文件內容來取代

<號

cat > catfile < ~/.bashrc

將.bashrc的內容作為輸入源,輸出到catfile文件中去

這個寫法和cp一樣


<<表示結束的輸入字符

cat > carfile << "eof"表示鍵盤輸入eof時輸入結束

Copyright © Linux教程網 All Rights Reserved