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

1、標準輸入(STDIN)ide

A.輸入重定向(標準輸入):<spa

做用:將原先鍵盤輸入的內容改由文件內容代替it

[root@wenwen ~]# cat > test.txtclass

asdastest

asdasawk

asdasnetwork

按crtl + d 退出grep

將network內容導入到test.txt中去error

[root@wenwen ~]# cat > test.txt < /etc/init.d/networknw

[root@wenwen ~]# ll -h test.txt /etc/init.d/network

-rwxr-xr-x. 1 root root 6.2K 10月 10 2013 /etc/init.d/network

-rw-r--r--  1 root root 6.2K 5月   4 20:14 test.txt

B.結束符:<<

輸入指定字符就會退出

[root@wenwen ~]# cat > test.txt << "cop"

> sadjaskd

> cop

2、標準輸出(STDOUT)

正確輸出重定向:>

追加劇定向:>>

[root@wenwen ~]# cat 3.txt | grep y | awk -F' ' '{print $4}'

2:關閉

2:關閉

2:關閉

2:關閉

2:關閉

2:關閉

[root@wenwen ~]# cat 3.txt | grep y | awk -F' ' '{print $4}' > 2c.txt

[root@wenwen ~]# cat 2c.txt

2:關閉

2:關閉

2:關閉

2:關閉

2:關閉

2:關閉

3、標準錯誤輸出(STDERR)

錯誤輸出重定向:2>

錯誤追加劇定向:2>>

[root@wenwen ~]# cat 4c.txt || cat 5.txt

cat: 4c.txt: 沒有那個文件或目錄

ijsla

#99999999

[root@wenwen ~]# (cat 4c.txt || cat 5.txt)> testtrue.txt 2> testfales.txt         #正確的輸出到true,錯誤的輸出到fales中,另外若是不加小括號,用管道符「|」的話會報錯,由於管道符只會處理經由前面一個命令傳來的正確消息,也就是standard output的信息,對於standard error沒有直接處理能力

[root@wenwen ~]# cat testtrue.txt

ijsla

#99999999

[root@wenwen ~]# cat testfales.txt

cat: 4c.txt: 沒有那個文件或目錄

注:將正確的輸出和錯誤的輸出都指定到同一個文件上

[root@wenwen ~]# (cat 4c.txt || cat 5.txt) > 2cc.txt 2>&1

[root@wenwen ~]# cat 2cc.txt

cat: 4c.txt: 沒有那個文件或目錄

ijsla

#99999999

相關文章
相關標籤/搜索