Linux Bash Shell萬用字元與特殊符號
由于在 Linux Bash Shell當中常會使用到一些萬用字元,與搭配特殊符號來將指令做更好的利用(例如最常提到的正規表示法 Regulare Express )!底下我們列出一些常用的萬用字元與特殊符號!
上面的萬用字元當中,最常用的就屬 *, ?, [] 及 ` 了!我們提幾個簡單的例子:
[test @test test]# ls test* <==那個 * 代表後面不論接幾個字元都予以接受(沒有字元也接受!)
[test @test test]# ls test? <==那個 ? 代表後面『一定』要接『一個』字元
[test @test test]# ls test??? <==那個 ??? 代表『一定要接三個』字元!
[test @test test]# cp test[1-5] /tmp <==將 test1, test2, test3, test4, test5 若存在的話,就拷貝到 /tmp 下
[test @test test]# cd /lib/modules/`uname -r`/kernel/drivers <==被 ` ` 括起來的內容『會先執行』!
上面幾個例子相當的有趣!尤其是***面兩個!需要注意的是, [] 里面『代表只有一個字元』但是范圍可以由 1-5 ,這樣來說的話,那么我們如果允許『大寫字元』就可以將檔案 copy 出來的話,可以這樣做:
cp *[A-Z]* /tmp
很有趣吧?! ^_^
此外,那個 `` 里面的『指令』會先被執行,也就是說:
1. 系統先執行 uname -r 找出輸出的結果;
2. 將結果累加在目錄上面,來執行 cd 的功能!
很棒吧!!這些基本的功能需要特別來了解一下才行呦!
【編輯推薦】