我的网络目录中包含扩展名且没有扩展名的文件
foo
bar
me.php
如何使用通配符表达式匹配最后没有扩展名的文件?
我尝试了很多方法,但都失败了
1)
*.*
它返回所有带扩展名
的文件2)
*[a-z]*
没有返回
然后我试图否定点,以便它可以返回没有扩展名的文件
*[a-z][!.]*
它也没有用。
有没有办法解决它?
答案 0 :(得分:2)
我建议在shell中激活extglob
函数。
您可以通过以下方式执行此操作:
shopt -s extglob
这将为您提供更强大的匹配模式。
然后你可以得到你想要的东西:
ls !(*.*)
然后使用
将其关闭shopt -u extglob
答案 1 :(得分:2)
除了extglob
之外,您还可以使用此find
命令列出当前目录中没有任何扩展名的所有文件:
find . -regex '\./[^.]*$' -maxdepth 1 -type f