Linux Make使用的重定向

2021-10-23 04:37:07 字數 1276 閱讀 9008

linux中,指令碼語言環境中,即你用make ***即其他一些普通linux命令,比如ls,find等,不同的數字,代表不同的含義:

數字含義標準叫法

0標準輸入 

stdin = standard input 

1標準輸出

stdout = standard output

2標準錯誤輸出

stderr = standard error

而系統預設的stdin,stdout,stderr,都是螢幕,所以,當你執行命令,比如make,後,所輸出的資訊,都是可以在螢幕上看到的。

所以,想要將對應資訊輸出到某個檔案中,就用對應的數字加上重定向符號』>』,實現將這些資訊,重新定向到對應的檔案中,即可。

(上面這兩句,也是之前太多的人來解釋,但是沒有說明白的地方。)

下面以make命令為例來說明,如何把對應的資訊,輸出到對應的檔案中:

1.想要把make輸出的全部資訊,輸出到某個檔案中,最常見的辦法就是:

make *** > build_output.txt

此時預設情況是沒有改變2=stderr的輸出方式,還是螢幕,所以,如果有錯誤資訊,還是可以在螢幕上看到的。

2.只需要把make輸出中的錯誤(及警告)資訊輸出到檔案中ing,可以用:

make *** 2> build_output.txt

相應地,由於1=stdout沒有變,還是螢幕,所以,那些命令執行時候輸出的正常資訊,還是會輸出到螢幕上,你還是可以在螢幕上看到的。

3.只需要把make輸出中的正常(非錯誤,非警告)的資訊輸出到檔案中,可以用:

make *** 1> build_output.txt

相應地,由於2=stderr沒有變,還是螢幕,所以,那些命令執行時候輸出的錯誤資訊,還是會輸出到螢幕上,你還是可以在螢幕上看到的。

4.想要把正常輸出資訊和錯誤資訊輸出到分別的檔案中,可以用:

make *** 1> build_output_normal.txt 2>build_output_error.txt

即聯合使用了1和2,正常資訊和錯誤資訊,都輸出到對應檔案中了。

5. 所有的資訊都輸出到同乙個檔案中:

make *** > build_output_all.txt 2>&1

其中的2>&1表示錯誤資訊輸出到&1中,而&1,指的是前面的那個檔案:build_output_all.txt 。

注意:上面所有的1,2等數字,後面緊跟著大於號』>』 ,中間不能有空格。

Linux Unix 重定向的使用

unix學習了重定向,在linux中用到,記錄如下 在做快取區溢位攻擊實驗的時候,由於 objdump j bufbomb結果過長,不便檢視,可以使用重定向 直接使用 touch assembly.result objdump g bufbomb assembly.result gedit asse...

node 重定向 express 重定向

服務端重定向對非同步請求無效 如何通過伺服器讓客戶端重定向 1.狀態碼設定為302 臨時重定向,301永久重定向 瀏覽器會記住 當再次請求相同位址的時候,瀏覽器不會重新請求該位址,會直接跳轉上一次請求該位址時的重定向位址 res.statuscode 2.在響應頭中通過 location 告訴客戶端...

輸入重定向,正確輸出重定向,錯誤輸出重定向

一 標準輸入 stdin a.輸入重定向 標準輸入 作用 將原先鍵盤輸入的內容改由檔案內容代替 root wenwen cat test.txt asdas asdas asdas 按crtl d 退出 將network內容匯入到test.txt中去 root wenwen cat test.txt...