輸出包含兩種類型: 一種是程序的運行結果(標准輸出), 一種是狀態和錯誤信息(標准錯誤).
標准輸出(standard output)和 標准錯誤(standard error), 默認是連接至屏幕;
標准輸入(standard input) 默認是連接至鍵盤;
可以使用IO重定向(redirection), 改變輸入, 輸出的發送位置;
1. 標准輸出
標准輸出重定向, 使用重定向操作符(">"), 把程序輸出至文件, 默認是從文件頭部重寫寫入;
可以使用"> test.txt",清空文本信息;
使用">>", 將文件添加至文本尾部;
2. 標准錯誤
標准錯誤重定向, 使用"2>", 進行輸出, 由於文件流包含三種, 即"輸入, 輸出, 錯誤", 對應"0, 1, 2";
即">", 即等於"1>", 標准輸出;
處理不想要的錯誤輸出, 使用"2> /dev/null", 隱藏一個命令的錯誤信息.
同時顯示輸出和錯誤, 標准錯誤是後於標准輸出產生, 即要先使用">", 再使用"2>&1", 命令:"xxxx > xxxx 2>&1";
也可以使用"&>", 直接輸出標准輸出和錯誤, 命令:"xxxx &> xxxx", 較新版bash提供.
如圖:
cat命令(ConcATenate), 本意是鏈接文件, cat xxxx[1] xxxx ... > xxxx[end];
1. 如果只使用第一個參數, 即把信息輸出至屏幕, 可以輸出短的文件, 不會換行;
2. 如果只使用cat, 則從鍵盤獲取信息, 輸出至屏幕;
3. 如果只使用最後一個參數, 即cat > xxxx, 即從鍵盤輸入, 存儲入文件;
4. 如果都使用, 則是連接文件, 把文件順次連接, 並存入結尾文件;
5. 可以使用"<", 即"cat < xxxx", 則是重定向, 把輸入的源, 變為文件, 和直接輸入文件意義相同.
本欄目更多精彩內容:http://www.bianceng.cn/OS/Linux/