1.概述
輸入重定向:指把檔案匯入到命令中。
標準輸入重定向(stdin,檔案描述符為0):預設從鍵盤輸入,也可以從其他檔案或命令中輸入。
輸出重定向:把原來要輸出到螢幕的資料資訊寫入到指定檔案中。
標準輸出重定向(stdout,檔案描述符為1):預設輸出到螢幕。
錯誤輸出重定向(stderr,檔案描述符為2):預設輸出到螢幕。
2.輸入重定向
命令 < 檔案 將檔案作為命令的標準輸入
[root@bogon 0612]# cat b.txt
bbbbbbbbbbbbbb
bbbbbbbbbbbbbb
//統計檔案行數
[root@bogon 0612]# wc -l < b.txt
2
3.輸出重定向命令 > 檔案 將標準輸出重定向到乙個檔案中(清空原有檔案的資料)
命令 >> 檔案 將標準輸出重定向到乙個檔案中(追加到原有內容的後面)
//將ls -l的輸出重定向到ls.txt檔案中
[root@bogon 0612]# ls -l
total 12
-rw-r--r--. 1 root root 17 jun 12 17:46 a.txt
-rw-r--r--. 1 root root 16 jun 12 17:46 b.txt
-rw-r--r--. 1 root root 147 jun 12 17:47 ls.txt
[root@bogon 0612]# ls -l > ls.txt
[root@bogon 0612]# cat ls.txt
total 8
-rw-r--r--. 1 root root 17 jun 12 17:46 a.txt
-rw-r--r--. 1 root root 16 jun 12 17:46 b.txt
-rw-r--r--. 1 root root 0 jun 12 17:48 ls.txt
//將ls -l的輸出追加到a.txt中
[root@bogon 0612]# cat a.txt
aaaaaaaaaaaaaaa
[root@bogon 0612]# ls -l >> a.txt
[root@bogon 0612]# cat a.txt
aaaaaaaaaaaaaaa
total 12
-rw-r--r--. 1 root root 17 jun 12 17:46 a.txt
-rw-r--r--. 1 root root 16 jun 12 17:46 b.txt
-rw-r--r--. 1 root root 147 jun 12 17:48 ls.txt
把命令的報錯資訊寫入到檔案
當使用者在執行乙個自動化的 shell 指令碼時,這個操作會特別有用,而且特別實用,因為它可以把整個指令碼執行過程中的報錯資訊都記錄在檔案中,便於安裝後的排錯工作。
//用ls命令檢視乙個不存在的檔案
root@bogon 0612]# ls ******xx 2> err.txt
[root@bogon 0612]# cat err.txt
ls: cannot access ******xx: no such file or directory
輸入輸出重定向
使用標準輸入流,標準輸出流和標準錯誤流,這些標準流都被預分配給鍵盤和顯示器。在需要的時候,可以使用重定向臨時改變這些預設分配。重定向是這樣一種過程,我們借助它指定乙個用於替代某個 標準檔案的檔案。輸入重定向 可以將標準輸入從鍵盤重定向到任何文字檔案。輸入重定向運算子為小於號 意味著該命令從此給 派的...
輸入輸出重定向
1.標準輸入的控制 語法 命令 檔案將檔案做為命令的輸入。例如 mail s mail test wesongzhou hotmail.com file1 將檔案file1 當做信件的內容,主 題名稱為mail test,送給收信人。2.標準輸出的控制 語法 命令 檔案將命令的執行結果送至指定的檔案...
輸入輸出重定向
想象一下,當我們寫了個程式,開始是在命令列下執行的程式,後來用mfc之類的改寫為窗體程式,原先用printf輸出的trace都不可見了,但是我們又需要 輸出到檔案分析 怎麼辦?1 開始寫的時候你定義乙個mytrace的巨集 2 你可以把printf換成fprintf 3 使用輸出重定向。第一種情況很...