Linux管道符、重定向與環境變量
——《Linux就該這麽學》筆記
輸入輸出重定向
輸入重定向
指把文件導入到命令中
輸出重定向
指把原本要輸出到屏幕的數據信息寫入到指定文件中
輸出重定向
分為標準輸出重定向和錯誤輸出重定向
每種有清空寫入與追加寫入兩種模式
標準輸入重定向(STDIN,文件描述符為0):默認從鍵盤輸入,也可以從其他文件或命令中輸入
標準輸出重定向(STDOUT,文件描述符為1):默認輸出到屏幕
錯誤輸出重定向(STDERR,文件描述符為2):默認輸出到屏幕
輸入重定向符號及作用
命令 < 文件: 將文件作為命令的標準輸入
命令 << 分界符: 從標準輸入中讀入,直到遇見分界符才停止
命令 < 文件1 > 文件2: 將文件1作為命令的標準輸入並將標準輸出到文件2
輸出重定向符號及作用
命令 > 文件: 將標準輸出重定向到一個文件中(清空原有文件的數據)
命令 2> 文件: 將錯誤輸出重定向到一個文件中(清空原有文件的數據)
命令 >> 文件: 將標準輸出重定向到一個文件中(追加到原有內容的後面)
命令 2>> 文件: 將錯誤輸出重定向到一個文件中(追加到原有內容的後面)
命令 >> 文件 2>&1 或者 命令 &>> 文件: 將標準輸出與錯誤輸出共同寫入到文件中(追加到原有內容的後面)
管道命令符
格式: 命令1|命令2|......|命令n
作用: 把左邊命令的結果作為右邊命令的輸入
eg: ls -l /etc/ | more
命令行通配符
通配符就是通用的匹配信息的符號
星號(*): 代表匹配零個或者多個字符
問號(?): 代表匹配單個字符
常用的轉義字符
反斜杠(\): 使反斜杠後面的一個變量變為單純的字符產
單引號(‘‘): 轉義其中所有的變量為單純的字符串
雙引號(""): 保留其中的變量屬性,不進行轉義處理
反引號(``): 把其中的命令執行後返回結果
重要的環境變量
變量是計算機系統用於保存可變值的數據類型
Linux中10個環境變量
HOME: 用戶的主目錄(即家目錄)
SHELL: 用戶在使用的shell解釋器名稱
HISTSIZE: 輸出的歷史命令記錄條數
HISTFILESIZE: 保存的歷史命令記錄條數
MAIL: 郵件保存路徑
LANG: 系統語言、語系名稱
RANDOM: 生成一個隨即數字
PS1:Bash解釋器的提示符
PATH: 定義解釋器搜索用戶執行命令的路徑
EDITOR: 用戶默認的文本編輯器
變量是由固定的變量名與用戶或系統設置的變量值兩部分組成的
可以使用export命令將自己定義的變量提升為全局變量
env命令: 該命令可以查看Linux系統中所有的環境變量
命令在Linux中的執行步驟
第一步:判斷用戶是否以絕對路徑或相對路徑的方式輸入命令(如/bin/ls),如果時則直接執行
第二步: Linux系統檢查用戶輸入的命令是否為"別名命令"
第三步: Bash解釋器判斷用戶輸入的是內部命令還是外部命令
第四步: 系統在多個路徑中查找用戶輸入的命令文件
定義命令別名命令格式: alias 別名=命令
刪除命令別名命令格式: unalias 別名
判斷命令屬於內部命令還是外部命令: type 命令名稱
第四步中定義路徑的變量叫作PATH,每個路徑值之間用冒號間隔
Linux管道符、重定向與環境變量