Shell程式設計(基礎)
Shell基礎學習筆記
一、別名與快捷鍵
二、歷史命令
三、輸出重定向
四、管道符
五、萬用字元
一別名與快捷鍵
別名命令:alias
設定別名命令:alias vi=’vim’
寫入環境變數配置檔案:vi ~/.bashrc
刪除別名:unalias 別名
常用快捷鍵:
Ctrl+c:強制終止當前命令
Ctrl+l:清屏
Ctrl+a:游標移動到命令列首
Ctrl+e:游標移動到命令列尾
Ctrl+u:從游標所在位置刪除到行首
Ctrl+z:把命令放入後臺
Ctrl+r:在歷史命令中搜索
二歷史命令
歷史命令:history
選項:-c -w
~/.bash_history
!n 重複執行第n條歷史命令
!! 重複執行上一條歷史命令
!字串 重複執行最後一條以該字串開頭的命令
三輸出重定向
標準輸入:/dev/stdin
標準輸出:/dev/stdout
標準錯誤輸出: /dev/stderr
標準輸出重定向:
命令> 檔案 以覆蓋的方式
命令>> 檔案 以追加的方式
錯誤輸出重定向:
命令 2>檔案
命令 2>>檔案
命令 &>檔案 以覆蓋的方式,正確錯誤結果都儲存在一個檔案中
命令 &>>檔案 以追加的方式
命令>>檔案1 2>>檔案2
輸入重定向:
wc 選項:-c統計位元組數–w統計單詞數 –l統計行數
四管道符
;命令1;命令2 多個命令順序執行
&& 命令1&&命令2 邏輯與 命令1正確執行命令2才會執行
|| 命令1||命令2 邏輯或 命令1不正確執行 命令2才會執行
命令1|命令2 命令1的正確輸出作為命令2的操作物件
五萬用字元
?匹配任意一個字元
* 匹配0個或任意多個字元
[] 匹配括號中的任意字元
[-] 匹配括號中的任意一個字元
[^] 邏輯非 表示匹配不是中括號內的一個字元
‘’ 單引號 在單引號中的特殊符號都沒有特殊含義
“” 雙引號
`` 反引號 和$()作用一樣,引用系統命令
# 代表註釋
$ 呼叫變數的值
\ 轉義符