用於把前乙個命令原本要輸出到螢幕的資料當作後乙個命令的標準輸出。
例如使用翻頁的形式檢視/etc目錄中的檔案列表及其屬性
管道符作用的物件是命令和命令,重定向作用的物件是命令和檔案。使用輸入重定向能夠把檔案匯入到命令中,而輸出重定向則是能夠把原本要輸出到螢幕的資料資訊寫入到指定檔案中,輸入用的比較少,輸出用的比較多。
顧名思義就是通用的匹配資訊的符號,比如星號(*)就是代表匹配零個或多個字元,問號(?)是代表匹配單個字元,中括號內加上數字[0-9]代表匹配單個阿拉伯數字的字元,而中括號內加上字母[abc]則是代表匹配單個指定的英文本母。
常見的轉義字元包括有:反斜槓()的作用就是轉義後面的乙個變數變為單純的字串,單引號('')則是轉義其中所有的變數為單純的字串,而雙引號("")是保留其中的變數屬性不轉義(可將變數的值提取出來),反引號(``)則是把其中的命令執行後返回乙個結果。
在linux系統中一般變數的名稱都是大寫的,下面講述當使用者執行了一條命令之後系統發生了什麼事:
第1步驟階段是判斷使用者是否以絕對路徑或相對路徑的方式輸入命令(如/bin/ls),如果是的話則直接執行。
第2步驟階段是檢查使用者輸入的命令是否為「別名命令」,即用乙個自創的命令名稱來替換原本的命令名稱。可以用alias命令來建立乙個屬於自己的命令別名,格式為:alias 別名=「命令」(命令需要用雙引號括起來),若要取消乙個別名的話則是用unalias命令,格式為:「unalias 別名」。例如以前每次用rm命令刪除檔案的時候都要被要求再確認是否執行刪除操作,其實這就是linux系統為了防止使用者誤刪除檔案而特意設定的rm別名命令。
第3步驟階段就是由bash直譯器來判斷使用者輸入的是個內部命令還是個外部命令,內部命令是直譯器內部的指令,會被直接的執行,而絕大部分的時候都會是外部命令,交由給第4步驟來繼續處理,可以使用「type 命令名稱」來手工判斷是內部命令還是外部命令。
第4步驟階段是系統在多個路徑中查詢使用者輸入的命令檔案,而定義這些路徑的變數叫做path,可以簡單把它理解成是「直譯器的小助手」,作用是告訴bash直譯器要執行的命令可能存放到了那裡,然後bash直譯器就會乖乖的在這些目錄中逐個查詢。path是由多個路徑值組成的變數,每個路徑值之間用冒號間隔,咱們對path變數內這些路徑的增加和刪除操作將會直接影響bash直譯器搜尋linux命令的位置。
新增壞境變數的格式:path=$path:路徑
重要的環境變數:
用unset可以取消某個自定義好的變數,格式為:unset 變數
管道符 重定向與環境變數
1 輸入輸出重定向 1.標準輸入重定向 stdin,檔案描述符為0 預設從鍵盤輸入,也可從其他檔案或命令中輸入。2.標準輸出重定向 stdout,檔案描述符為1 預設輸出到螢幕。3.錯誤輸出重定向 stderr,檔案描述符為2 預設輸出到螢幕。表1 輸入重定向中用到的符號及其作用 對於輸出重定向來講...
管道符 重定向與環境變數
2 輸出重定向 grep sbin nologin etc passwd wc l 1 使用方式 命令a 命令b 命令c 萬用字元含義 表示匹配零個或者多個字元 匹配單個字元 0 9 匹配0 9之間的單個數字 abc 匹配a,b,c單個字元中的任意乙個字元 匹配 dev目錄下的所有以sda開頭的檔案...
管道符,重定向與環境變數
管道符,重定向與環境變數 1.輸入重定向 一,輸入重定向中用到的符號及作用 命令 檔案 將檔案作為命令的標準輸入 命令 分界符 從標準輸入中讀入,直到遇見分解符才停止 命令 檔案1 檔案2 將檔案作為命令的標準輸入並將標準輸出到檔案2 二,輸出重定向用到的符號及作用 命令 檔案 將標準輸出重定向到乙...