如何匹配文件扩展名,而不pipebash脚本中的大小写

让我们只是说我想匹配.abc扩展名,但它可以作为.ABC.AbC 。 如何识别.abc扩展名的所有这些变体以处理.abc文件?

现在我正在使用:

ls | grep -i .abc

但我听说greppipe道通常不是最好的主意。 有一个更好的方法吗?

如果直接输入扩展名,则可以使用字符类:

 ls *.[Aa][Bb][Cc] 

你也可以使用find-iname选项:

 find -maxdepth 1 -iname '*.abc' 

你可以使用nocaseglob选项来建立nocaseglob ,使商户不注意情况。

 $ touch foo.abc foo.ABC $ echo *.abc foo.abc $ shopt -s nocaseglob $ echo *.abc foo.ABC foo.abc