Linux學習之三 特殊符號
1,>或1> 輸出重定向:把前面輸出的東西輸入到後面的文件中,會清除原來的內容。
例如:echo “Im studying linux “>a.txt
2,>>或1>> 追加重定向:把前面輸出的東西追加到後面的文件中,不會清除原來的內容。
例如:echo “Im studying linux “>>a.txt
3,0<或< 輸入重定向:輸入重定向用於改變命令的輸入,後面指定輸入的命令,前面跟文件名。
例如:echo 1 2 3 4 >a.txt
xargs –n 2 <a.txt
4,0<<或<<追加輸入重定向:後跟字符串,用於表示“輸入結束”,也可以用ctrl+d來結束輸入。
例如:cat >/a.txt <<end 或者 cat >>/a.txt <<end
5,2> 錯誤輸入重定向:把錯誤信息輸入到後面的文件中去,會刪除原來的內容。
例如: cho 1234 2>a.txt
6,2>>錯誤追加重定向:把錯誤信息輸入到後邊的文件中,不會刪除原來的內容。
例如:cho 123 2>>a.txt
說明:
a, 箭頭所指的方向是數據的流向。
b, 數字說明:
A,標準輸入(stdin):代碼為0,使用<或<<。數據流向從右到左。
B,標準正常輸出(stdout):代碼為1,使用1>或1>>或>或>>。數據流向從左到右。
C,標準錯誤輸出(stderr):代碼為2,使用2>或>>。
特殊重定向三種高級寫法:
a,將標準輸出重定向到b.txt,將錯誤輸出重定向到a.txt。
例如:echo abc 1>b.txt 2>a.txt
b, 2>&1 :把錯誤重定向到標準輸出,即然錯誤的輸出和正確的輸出的定向一樣
例如:echo abc >a.txt 2>&1
C,2>&1的寫法相當於>&
例如:echo abc &>a.txt 相當於 echo abc >a.txt 2>&1
Linux學習之三 特殊符號