无论bash脚本中的大小写如何匹配文件扩展名

时间:2014-11-20 15:51:14

标签: linux bash

我们只想说我希望与.abc扩展名匹配,但它可能会以.ABC.AbC的形式出现。如何识别.abc扩展程序的所有这些变体以处理.abc个文件?

现在我正在使用:

ls | grep -i .abc

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

2 个答案:

答案 0 :(得分:4)

如果您按字面输入扩展名,则可以使用字符类:

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

您还可以使用-iname的{​​{1}}选项:

find

答案 1 :(得分:2)

您可以使用nocaseglob内置的shopt选项,使整体无法关注案例。

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