列出 'ls' 中至少有两个元音 linux shell 的文件

List files with 'ls' that have at least two vowels in linux shell

我被这个问题困住了:

List all files with ls that have at least two vowels in any position and end with .c, .h or .s

我提供了部分解决方案:ls *{a,e,i,o,u}*.[chs]

但显然这不满足问题要求,因为它列出了所有具有任意数量元音的文件,而不是两个或更多。

我也会用字符 class 作为元音

ls *[aeiou]*[aeiou]*.[chs]

也可以使用括号扩展,但有些文件会被多次列出:

ls *{a,e,i,o,u}*{a,e,i,o,u}*.[chs]