在linux中大多數命令都很簡單,為了完成複雜的操作,我們需要將這些命令組合使用。
linux中絕大多數的命令都是返回純文字格式的資料,而命令的輸入格式也是純文字,這就讓命令的組合呼叫成為可能。
管道和重定向機制就是為了多命令的協作工作。
命令列shell的資料流有如下定義:
名稱說明
編號預設
stdin
標準輸入
0鍵盤輸入
stdout
標準輸出1終端
stderr
標準錯誤2終端
命令通過stdin接受引數,通過stdout輸出結果或通過stderr輸出錯誤
重定向:
> 將輸出資訊覆蓋到檔案 例:date -h > date.help
>> 將輸入資訊追加到檔案的末尾
< 重定向輸入 例:grep wangdong < /ect/passwd
通過在》、>>前加入數字可以指定輸出的型別,如2>表示重定向輸出錯誤,1>表示重定向輸出結果,還可以通過&符號將輸出錯誤和輸出結果一起重定向 2>&1
管道:| 將命令的輸出作為後面命令的輸入 例:ls -l | grep "*.log"
總結:管道通常用來組合不同的命令來實現複雜的功能
重定向使用者儲存命令的輸出資訊或錯誤資訊
管道與重定向
目錄 重定向 轉換和刪除字元 tr 從檔案中匯入 stdin 把多行傳送給 stdin 管道 重定向到多個目標 先說什麼是標準輸入輸出,我們從鍵盤上敲擊,然後輸入到我們的電腦中,這是標準的輸入,那麼什麼是標準輸出呢,我們在經過一系列正確的操作得到的能在螢幕上顯示出來的輸出是標準輸出。那不正確的操作產...
管道與》重定向
命令 可以將乙個命令的輸出作為另乙個命令的輸入。rpm qa grep licq 這條命令使用乙個管道符 建立了乙個管道。管道將rpm qa命令的輸出 包括系統中所有安裝的rpm包 作為grep命令的輸入,從而列出帶有licq字元的rpm包來。命令 提供了兩個程序之間通訊的途徑。表示將結果輸入到乙個...
重定向 管道
1 輸入輸出重定向可分為 標準輸入 由鍵盤輸入 標準輸出 由監視器輸出 錯誤輸出 與標準輸出相同,但是他們是具有各自的資料流,各佔乙個資料流 通常用識別符號對位 標準輸入用0,標準輸出用1,錯誤輸出用2。重定向 顧名思義就是將標準的輸入和輸出位置重新定向 覆蓋重定向 每一次的輸出都要覆蓋原始檔中的內...