天天看點

linux 重定向_小小的重定向linux裡的喲

今天午飯的時候刷頭條,突然刷到一個消息。4月2号,是什麼節日?你們猜猜看!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

linux 重定向_小小的重定向linux裡的喲

是兒童節!哈哈哈

一定要多讀書!要看有圖的書!是以咧,今天悄悄的複習了下linux裡的重定向的小知識點。熟悉的盆友不要揭穿我啊。

linux 重定向_小小的重定向linux裡的喲

其實看上圖,在我們的目前程序下,有fd,代表檔案描述符,我是這樣了解的。。。當切換到fd之後,看目錄下有 0 1 2 ,其實啊任何程序都有 0 1 2,但是他們都分别代表着什麼呢? 0代表标準輸入,1代表标準輸出,2代表報錯輸出。接下來看下圖

linux 重定向_小小的重定向linux裡的喲

exec 8 >& 1 代表着定義了一個檔案描述狀态8 但是他的指向是指向1的。接着看下圖。

linux 重定向_小小的重定向linux裡的喲

大家可以看到,8的後面的指向和1 的指向一樣。

linux 重定向_小小的重定向linux裡的喲

當我們執行這個指令的時候,會展示etc下的檔案或者目錄。

linux 重定向_小小的重定向linux裡的喲

這時候我們不想讓他輸出到螢幕,這時候可以采用重定向。

linux 重定向_小小的重定向linux裡的喲

這時候我們就 在指令的後面加上 1>ls.out 意味着将現在程序的檔案描述符的1的指向換成了ls.out 這時候我們來打開ls.out來看看

linux 重定向_小小的重定向linux裡的喲
linux 重定向_小小的重定向linux裡的喲

大家可以看到,本來的輸出流位置發生了變化。輸出到了檔案ls.out裡面。

感謝大家的觀看,一個小小小的重定向展示!複習複習複習!讀書讀書讀書!