歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> 學習Linux >> linux中輸入輸出和重定向問題,linux重定向

linux中輸入輸出和重定向問題,linux重定向

日期:2017/3/3 18:11:12   编辑:學習Linux

linux中輸入輸出和重定向問題,linux重定向

linux中輸入輸出和重定向問題,linux重定向


輸入輸出解釋  

當我們執行shell的時候,每個進程都和三個打開的文件有關系,並使用文件描述符來引用這些文件。但這些文件不容易記憶,所以shell給了相應的文件名:

  • 0:輸入文件-標准輸入(它的命令是輸入,缺省是鍵盤,也可以是文件或者其他命令的輸出)
  • 1:輸出文件-標准輸出(它的命令是輸出,缺省是屏幕,也可以是文件)
  • 2:錯誤輸出文件-標准輸出(它的命令是錯誤的輸出,缺省是屏幕,也可以是文件)(或許會有疑問,為什麼會定義錯誤輸出,因為很多人喜歡把錯誤單獨輸出,或者在處理大數據文件時,可能產生很多的錯誤,所以定義了此命令)

文件重定向

在執行命令的時候,可以指定命令的輸入,輸出和錯誤,要實現這個, 就必須使用文件重定向。

在對標准錯誤進行重定向時,必須使用文件描述符,但是對於標准輸入和輸出來說,則不是必須的。

下面是幾種寫法的案列:

  • command > filename    把把標准輸出重定向到一個新文件中
  • command >> filename 把標准輸出重定向到一個文件中(追加)
  • command 1 > fielname 把標准輸出重定向到一個文件中
  • command > filename 2>&1 把標准輸出和標准錯誤一起重定向到一個文件中
  • command 2 > filename 把標准錯誤重定向到一個文件中
  • command 2 >> filename 把標准輸出重定向到一個文件中(追加)
  • command >> filename 2>&1 把標准輸出和標准錯誤一起重定向到一個文件中(追加)
  • command < filename >filename2 把c o m m a n d命令以f i l e n a m e文件作為標准輸入,以f i l e n a m e 2文件作為標准輸出

  • command < filename 把c o m m a n d命令以f i l e n a m e文件作為標准輸入

  • command << delimiter 把從標准輸入中讀入,直至遇到d e l i m i t e r分界符
  • command <&m 把文件描述符m作為標准輸入
  • command >&m 把標准輸出重定向到文件描述符m中
  • command <&- 把關閉標准輸入

http://xxxxxx/Linuxjc/1161731.html TechArticle

Copyright © Linux教程網 All Rights Reserved