【學習Linux】輸入輸出的重定向,管道

①什麼是輸入輸出的重定向

我們從鍵盤上輸入,在屏幕中輸出,這是默認的輸入輸出方式,所謂輸入輸出的重定向就是改變輸入輸出的方式,用文件來輸入,以及輸出到文件中。

②爲什麼要輸入輸出的重定向

比如寫日誌文件,肯定不能在屏幕上輸出,我們必須把他保存在文件中,還有,如果有一個表的數據需要輸入,一條一條的在鍵盤上敲很麻煩,所以必須使用重定向。

③怎麼使用輸入輸出的重定向

一般使用以下格式

命令<文件名 或者 命令>文件名

括號的尖端指向那一邊就表示輸出到哪裏,指向文件名當然是將命令的結果輸出到文件中。指向命令當然是使用這種命令來讀取文件了。

④例子

首先,創建一個文件並編輯它vim test,

(如果有這個文件會就編輯它,沒有就會直接創建並編輯,如果退出時沒保存,文件就不會創建。)

然後隨便輸入幾條指令,比如echo `data`顯示當前時間。保存退出。

接下來使用輸入的重定向,把這個文件交給bash來執行。bash<test

得到結果,結果是當前時間。

輸出的例子僅用簡單的2條語句就可以驗證,pwd > test,pwd命令獲取當前路徑

使用cat test可以得到當前路徑的結果

⑤附加輸出重定向和內置輸入重定向

附加輸出重定向 >>   表示在文件末尾添加數據,前面的是指將文件內容清空了再寫入文件

內置輸入重定向 <<  這裏還是不太明白。

使用格式

命令 參數 <<標記符 mail $name<<%% 

。。。內容 Hello

標記符 %%

這樣就把%%裏面的內容賦值給name了

⑥管道

輸入輸出重定向可以結合起來使用,比如

wc < test1> test2

使用wc命令統計test1的結果,然後把結果保存在test2文件中

這樣做太過麻煩。使用管道可以達到同樣的結果。額,這個好像不可以。

command1|command2

這個就是管道的用法。

ls | sort

這個就體現了管道的用法,列舉當前目錄的文件以及文件夾,並排序。如果文件較多還可以

ls | sort | more

而且這些命令是同時執行的。還可以

ls | sort > test

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章