輸入輸出重定向 把文字寫進文件的方法

2021-10-12 02:12:41 字數 1121 閱讀 3255

我們在寫自動化指令碼的時候,有時會遇到有的路徑太長的情況,這個時候我們一點一點敲進指令碼裡,費時費力又比較無用功。這個時候我們可以使用重定向來輸出到指令碼裡。同樣,我們也可以把文件裡的文字輸入到一些命令當中,來完成統計行數等的操作。

簡而言之,輸入重定向是指把檔案匯入到命令中,而輸出重定向則是指把原本要輸出到螢幕的資料資訊寫入到指定檔案中。

一般來說用到輸出重定向的頻率更高一些,所以又把輸出重定向分為兩類:標準輸出重定向和錯誤輸出重定向,模式也分為清空寫入與追加寫入兩種模式。

標準輸入重定向(stdin,檔案描述符為 0):預設從鍵盤輸入,也可從其他檔案或命令中輸入。

標準輸出重定向(stdout,檔案描述符為 1):預設輸出到螢幕。

錯誤輸出重定向(stderr,檔案描述符為 2):預設輸出到螢幕。

為什麼要這麼分類呢?

簡單來說,如果輸出一段存在的文件的文字,或者是一段存在的路徑等,直接將他寫入到目標文件是可以的;但是不存在的文件輸出時會報錯,這個時候要如何處理,就要和標準輸出區分開來。

開始之前,先了解一下重定向的幾個符號和方式:

嘗試一下把原本在螢幕上輸出的man bash 輸出到新建的文字文件裡:

符號》可以覆蓋文件原來的文字,把需要的文字放進文件裡;

符號》可以不覆蓋原文,而是把文字追加到原文後面

而要把錯誤資訊寫入文件,可以用符號2>或者2>>,這個符號在輸出正確資訊到文件時會直接輸出到螢幕上,而輸出錯誤資訊就會直接進入文件裡。

輸入重定向用的比較少,這裡按照書裡的模式輸入到wc命令來輸出文件行數

輸入輸出重定向

使用標準輸入流,標準輸出流和標準錯誤流,這些標準流都被預分配給鍵盤和顯示器。在需要的時候,可以使用重定向臨時改變這些預設分配。重定向是這樣一種過程,我們借助它指定乙個用於替代某個 標準檔案的檔案。輸入重定向 可以將標準輸入從鍵盤重定向到任何文字檔案。輸入重定向運算子為小於號 意味著該命令從此給 派的...

輸入輸出重定向

1.標準輸入的控制 語法 命令 檔案將檔案做為命令的輸入。例如 mail s mail test wesongzhou hotmail.com file1 將檔案file1 當做信件的內容,主 題名稱為mail test,送給收信人。2.標準輸出的控制 語法 命令 檔案將命令的執行結果送至指定的檔案...

輸入輸出重定向

想象一下,當我們寫了個程式,開始是在命令列下執行的程式,後來用mfc之類的改寫為窗體程式,原先用printf輸出的trace都不可見了,但是我們又需要 輸出到檔案分析 怎麼辦?1 開始寫的時候你定義乙個mytrace的巨集 2 你可以把printf換成fprintf 3 使用輸出重定向。第一種情況很...