第六章、管道及IO重定向

第六章、管道及IO重定向


04_03_管道及IO重定向


計算機組成:

運算器、控制器: CPU

存儲器:RAM

輸入設備/輸出設備

 

程序:指令和數據

 

控制器:指令

運算器:

存儲器:

 

地址總線:內存尋址

數據總線:傳輸數據

控制總結:控制指令

 

寄存器:CPU暫時存儲器

 

I/O: 硬盤,

 

程序

 

INPUT設備、OUTPUT設備


系統設定

         默認輸出設備:標準輸出,STDOUT, 1

         默認輸入設備:標準輸入, STDIN, 0

         標準錯誤輸出:STDERR, 2

        

標準輸入:鍵盤

標準輸出和錯誤輸出:顯示器

 

I/O重定向:

 

Linux:

>: 覆蓋輸出

>>:追加輸出

 

set -C: 禁止對已經存在文件使用覆蓋重定向;

            強制覆蓋輸出,則使用 >|

set +C: 關閉上述功能

 

2>: 重定向錯誤輸出

2>>: 追加方式

 

&>: 重定向標準輸出或錯誤輸出至同一個文件

 

<:輸入重定向

<<:Here Document,在此處生成文檔

    cat >> /tmp/myfile.txe << EOF,可以在腳本中生成文檔


 

管道:前一個命令的輸出,作爲後一個命令的輸入

 

命令1 | 命令2 | 命令3 | ...

 

tee:

    既保存文檔,又輸出到屏幕 


練習:

1、統計/usr/bin/目錄下的文件個數;

# ls /usr/bin | wc -l

2、取出當前系統上所有用戶的shell,要求,每種shell只顯示一次,並且按順序進行顯示;

# cut -d: -f7 /etc/passwd | sort -u

3、思考:如何顯示/var/log目錄下每個文件的內容類型?

 

4、取出/etc/inittab文件的第6行;

# head -6 /etc/inittab | tail -1

5、取出/etc/passwd文件中倒數第9個用戶的用戶名和shell,顯示到屏幕上並將其保存至/tmp/users文件中;

# tail -9 /etc/passwd | head -1 | cut -d: -f1,7 | tee /tmp/users

6、顯示/etc目錄下所有以pa開頭的文件,並統計其個數;

# ls -d /etc/pa* | wc -l

7、不使用文本編輯器,將alias cls=clear一行內容添加至當前用戶的.bashrc文件中;

# echo "alias cls=clear" >> ~/.bashrc



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