程式:指令+資料
讀入資料:input
輸出資料:output
開啟的檔案都有乙個fd: file descriptor (檔案描述符)
標準輸入:keyborad, 0
標準輸出:monitor, 1
標準錯誤輸出:monitor, 2
i/o重定向:改變標準位置
輸出重定向:command > new_pos, command >> new_pos
>:覆蓋重定向,目標檔案中的原有內容會被清除;
>>: 追加重定向,新內容會追加至目標檔案尾部;
# set -c: 禁止將內容覆蓋輸出至已有檔案中;
強制覆蓋:>|
# set +c:
2>: 覆蓋重定向錯誤輸出資料流;
2>>: 追加重定向錯誤輸出資料流;
標準輸出和錯誤輸出各自定向至不同位置:
command > /path/to/file.out 2> /path/to/error.out
合併標準輸出和錯誤輸出為同乙個資料流進行重定向:
&>:覆蓋重定向
&>>:追加重定向
command > /path/to/file.out 2> &1
command >> /path/to/file.out 2>> &1
輸入重定向:<
tr命令:轉換或刪除字元
tr [option]... set1 [set2]
here documentation:<<
# cat << eof
# cat > /path/to/somefile << eof
管道:command1 | command2 | command3 |...
note:最後乙個命令會在當前shell程序的子shell程序中執行;
tee命令:
tee [option]... [file]...
管道及I O重定向
管道符 前乙個命令的輸出,作為後乙個命令的輸入 命令1 命令2 命令3 輸出 hello,world.並將小寫轉換為大寫 root localhost echo hello,world.tr a z a z hello,world.顯示passwd檔案中按 分割的每行第乙個部分並排序並將小寫轉換為大...
bash 管道和重定向
bash的標準輸入裝置是鍵盤 滑鼠等裝置,標準輸出裝置為顯示器。我們通過鍵盤 滑鼠來輸入,在顯示屏上進行輸出。其中標準輸入的檔案描述為0,標準輸出的檔案描述為1,錯誤檔案的描述為2.管道可以使我們多個命令一起使用,他的作用是將前乙個命令的標準輸入作為後乙個命令的標準輸出 例如 rpm qa 顯示計算...
I O重定向和管道
輸入輸出重定向和管道是程序間的一種特殊方式。unix程序使用標準的檔案描述符,0 stdin 1 stdout 2 stderr 當程序請求乙個新的檔案描述符的時候,系統核心將最低可用的檔案描述符給它。通常情況下這三個檔案描述符是開啟著的。一 i o重定向 在linux中,我們通過shell與系統互...