[英]How to match file extensions regardless of case in bash script
我只想說我想匹配.abc
擴展名,但它可能會以.ABC
或.AbC
。 如何識別.abc
擴展名的所有這些變體以處理.abc
文件?
現在我正在使用:
ls | grep -i .abc
但是我聽說grep的管道通常不是最好的主意。 有一個更好的方法嗎?
如果從字面上輸入擴展名,則可以使用字符類:
ls *.[Aa][Bb][Cc]
您還可以使用find
的-iname
選項:
find -maxdepth 1 -iname '*.abc'
你可以使用nocaseglob
選項購買內置的shopt
,使globs不注意大小寫。
$ touch foo.abc foo.ABC
$ echo *.abc
foo.abc
$ shopt -s nocaseglob
$ echo *.abc
foo.ABC foo.abc
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.