I/O重定向

程序:指令+數據

 

 

數據輸入:交互式、文件、進程

數據輸出:監視器、文件、進程

 

標準輸入(stdin):0,鍵盤

標準輸出(stdout):1,監視器

錯誤輸出(stderr):2,監視器

 

正常輸出和錯誤輸出是兩個不同的數據流;

 

重定向:

輸出重定向:>, >>

COMMAND> NEW_POSITION:覆蓋重定向,會清空文件中原有的數據

注意:危險操作;關閉此功能,可使用“set -C”,相反操作爲“set +C”

 

COMMAND>> NEW_POSITION:追加重定向,新數據會被附加在原有文件數據的後面;

 

錯誤輸出重定向:2>, 2>>

COMMAND 2> ERR_OUTPUT覆蓋文件中的內容

COMMAND 2>> ERR_OUTPUT追加在文件數據後


 

同時定向兩種輸出數據流

方法一:

COMMAND> OUT_FILE 2>&1

COMMAND>> OUT_FILE 2>&1


 

方法二:

COMMAND&> OUT_FILE

COMMAND&>> OUT_FILE


 

輸入重定向:

COMMAND < NEW_IN

 

tr命令

tr [OPTION]... SET1 [SET2]

把輸出數據中的,在SET1中的每個字符對應地替換爲SET2的每個字符;

-d: 刪除在輸入的數據流中出現的屬於SET1的每個對應的字符;

 


 

COMMAND << EOF[EOF表示End Of File]

 

[root@localhost tmp]# cat << EOF >abc.txt
> i am lx
> hello world
> eof
> EOF
[root@localhost tmp]# cat abc.txt 
i am lx
hello world
eof

 

把從輸入重定向的內容輸出重定向到abc.txt文件中,EOF可以用任意STRING代替,區分大小寫


 

管道:|

COMMAND1的輸出當做COMMAND2的輸入,再把COMMAND2的輸出當做COMMAND3的輸入,以此類推

COMMAND1 | COMMAND2 | COMMAND3 | …


多道輸出:

COMMAND | tee /PATH/TO/SOMEFILE

tee命令:把標準輸入顯示到標準輸出中,並保存到文件xx中,如果xx文件不存在則創建之,存在則會覆蓋之;

[-a] :追加到文件的後面而不是覆蓋



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章