linux之shell基礎-通配符和其他特殊符號

通配符:

[^]:邏輯非,表示匹配不是中括號內的一個字符,例如:[^0-9]代表匹配一個不是數字的字符。

[]:匹配中括號中任意一個字符。例如[abc]代表一定匹配abc中的一個字符,或者是a,或者是b,或者是c。

*:匹配0個或任意多個任意字符,可以匹配任何內容,

如果之前瞭解過正則表達式的匹配規則,這個就很好理解了吧。

舉例:

[njh@localhost tmp]$ rm -rf * 刪除目錄下的全部文件,注意哦,刪除前一定要確認當前路徑,如果不小心把跟/刪除了,就完蛋了。

[njh@localhost tmp]$ ls *abc 查看以abc結尾的文件

[njh@localhost tmp]$ ls [0-9]abc

[njh@localhost tmp]$ ls [^0-9]abc

其他特殊符號:

  • '':單引號,在單引號中所有的特殊符號,如$和·(反引號)都沒有特殊含義,作為普通字符串輸出,

  • "":雙引號,在雙引號中特殊符號都沒有特殊含義,但是“$”、”·”、”\”是例外,擁有調用變量的值、引用命令和轉義符的特殊含義。

  • ``:反引號,反引號括起來的內容是系統命令,在Bash中會先執行他,和$()作用一樣,不過推薦使用$(),反引號看起來不是很方便,非常容易出錯。

  • $():和反引號作用是一樣的,用來引用系統命令。

  • #:在Shell腳本中,#開頭的行代表註釋。

  • $:用於調用變量的值,如需要調用變量name的值時,需要用$name的方式得到變量的值。

  • \:轉義符。跟在\之後的特殊符號將失去特殊含義,變為普通字符,比如\$輸出$符號,而不再是變量引用。


  • 分享到:


    相關文章: