日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux中的通配符

發布時間:2025/4/5 linux 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux中的通配符 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Bash Shell本身不支持正則表達式,使用正則表達式的是Shell命令和工具,如grep, sed, awk等,但是,Bash Shell可以使用正則表達式中的一些元字符實現通配(Globbing)功能,通配是把一個包含通配符的非具體文件名擴展存儲在計算機、服務器或網絡上的一批具體文件名的過程。最常用的通配符包括正則表達式字符:?, *, [], {}, ^等。這些元字符在通配中的意義與正則表達式中的意義不完全一致,*符號不再表示其前面字符的重復,而是表示任意位的字符,?字符表示一個任意字符,^符號在通配中不代表行首,而是代表取反。下面以ls命令來舉例通配符的使用:

#列出以.awk結尾文件的詳細信息

ls -l *.awk

#列出以0開頭、后面跟1個字符且以.pem為后綴的文件,

ls -l 0?.pem

#列出以a~h范圍內字母開頭,以.awk結尾的文件

ls -l [a-h]*.awk ? #[]符號的意義與正則表達式中的[]符號的意義一樣

#通配中的{}符號表示一組表達式的集合,{}符號內的表達式是"或"的關系

ls?-l?{[a-h]*.awk,0?.pem} ?#表達式之間不能有空格

通配的結果由計算機搜索大量的文件和目錄進行匹配而輸出,通配對處理能力和內存資源有很高的需求。黑客輸入包含通配符的文件名故意讓服務器重復和連續不斷地進行通配可能引起拒絕服務攻擊。因此,大型服務器經常通過限制服務器執行通配功能的次數、限制一個具體用戶每次輸入的通配符或者如果通配符太普通,則拒絕執行通配等方法來提高服務器的安全性。

內部變量GLOBIGNORE保存了通配時所忽略的文件名集合,應該說,?,*,[],{},^五個符和GLOBIGNORE變量構成了Shell通配的所有內容。

總結

以上是生活随笔為你收集整理的Linux中的通配符的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。