文件描述符
- stdin:標准輸入,接收鼠標、鍵盤或其他輸入設備的輸入信息,文件描述符是1
- stduot:輸出所有的正常輸出結果,文件描述符是2
- stderr:輸出所有錯誤信息,文件描述符是3
重定向符
- “>":使用方法,“command > file",進程接受標准輸入后,該重定向符使得標准輸出改變方向,不輸出到屏幕,而是輸出到一個文件。標准錯誤輸出依然不變,默認輸出到屏幕或相應的設備。另外,若文件已存在,則原有內容就會被擦除。例如:
- ”>>" :與上面一個類似,只是在寫入文件時,不將文件內容清除,而是在后面追加。目標文件不存在時,則會創建該文件。
- ">&":1,2均為標准輸出的重定向符。若要將錯誤信息輸出到文件中,就要用到">&"重定向。這個命令在寫入文件也會清空原有內容。
- ">>&“:與上一個類似,只是以追加的方式寫入文件
- "<":"command < file ",進程就會從文件中獲取輸入信息,而不是從屏幕上輸入。
- "<<":重定向符的一種,其后面跟的是定界符。例如:
- "command %n%c file”:command 輸出重定向的命令 ,%n 文件描述符,默認值為1,%c 重定向符 ,file 目標文件。
- 幾個復雜的重定向舉例:
- 將標准錯誤重定向為標准輸入 command 2>&1
- 第一個文件既作為標准輸入也作為標准輸出 command <> file
- 把文件描述符x作為標准輸入 command <&x
- 把標准輸出重定向到文件描述符x中 command >&m
- 關閉標准輸出 command 1>&-
- 關閉標准錯誤輸出 command 2>&-
- 關閉標准輸入 command 0<&-