1. 程式人生 > >控制檯重定向stdout stderr

控制檯重定向stdout stderr

示例
$ kill -HUP 1234 >killout.txt 2>killerr.txt
這個命令就會將輸出和錯誤資訊分別存放在一個單獨的檔案中.如果我們要將這兩個輸出放在一個檔案中,我們可以使用>&來組合這兩種輸出.如:
$ kill -1 1234 >killouterr.txt 2>&1
這個命令就可以將所有的輸出放在同一個檔案中.在這裡我們要注意的就是命令的順序.這個命令的順序可以解釋為重定向標準輸出到檔案killouterr.然後重定向標準錯誤輸出到與標準輸出同一的地方.如果我們弄錯了順序,我們就不會得到我們希望的輸出.
在這裡我們會看到kill命令的結果使用了返回程式碼,然而常常是我們並不需要儲存標準輸出或是標準錯誤輸出.我們可以使用UNIX中的/dev/null來忽略所有的錯誤輸出.如:
$ kill -1 1234 >/dev/null 2>&1