本章節主要介紹關於linux通配符的用法,熟練運用通配符可以提高工作效率並且可以簡化一些繁瑣的處理步驟。 代表任意多個字元 代表任意單個字元 代表“[”和“]”之間的某一個字元,比如[0-9]可以代表0-9之間的任意一個數字,[a-zA-Z]可以代表a-z和A-Z之間的任意一個字母,字母區分大小寫。
概述
本章節主要介紹關於linux通配符的用法,熟練運用通配符可以提高工作效率並且可以簡化一些繁瑣的處理步驟。
正文
測試數據
touch a a6.log abc.log ac.txt b c c5.txt x.log A
“*”
代表任意多個字元
例:查詢以".log"結尾的文件 ll *.log
“?”
代表任意單個字元
例:只查詢a、b、c
ll ?
“[]”
代表“[”和“]”之間的某一個字元,比如[0-9]可以代表0-9之間的任意一個數字,[a-zA-Z]可以代表a-z和A-Z之間的任意一個字母,字母區分大小寫。
例:只查詢字母文件
ll [a-zA-Z]
例:查詢以“.log”結尾且“.log”前只有兩個字元的文件且第二個字元是數字 ll ?[0-9].log
“^”
表示匹配結果取反的意思,註意這個通配符必須要在[]中使用
例:查詢不是以“.log”結尾的文件
ll *[^txt]*
“{}”
表示符合括弧內包含的多個文件
例:查詢‘.log’和“.txt”結尾的文件
ll {*.log,*.txt}
註意: “.”這個符合比較特殊,如果匹配的條件加上了該符合那麼說明查詢結果文件就包含帶“.”的文件
例如前面的“^”的例子,如果我這樣查詢“ll *.[^txt]*”,那麼結果就不一樣了
刪除操作
例如:刪除a、b、c和以.txt結尾的文件
rm -f {[abc],*.txt}
總結
當然既然可以查詢當然也可以使用通配符匹配的方式進行移動文件,如果需要在存在很多文件的文件夾中移動某些類型的文件那麼使用通配符匹配的效率就顯而易見了;當時通配符的使用技巧不單單隻有這些,有空的可以多去研究。
備註: 作者:pursuer.chen 博客:http://www.cnblogs.com/chenmh 本站點所有隨筆都是原創,歡迎大家轉載;但轉載時必須註明文章來源,且在文章開頭明顯處給明鏈接。 《歡迎交流討論》 |