You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写匹配当前目录下除.和..外所有文件目录的Bash Glob模式?

Bash Glob 匹配当前目录所有文件/目录(排除.和..)

核心方案(无需额外配置)

直接组合两个Glob模式,覆盖所有非./..的文件与目录:

ls -d .[!.]* *

效果验证

假设当前目录内容如下:

.
..
.my_dot_directory
.my_dot_file
my_directory
my_file

执行上述命令后,输出结果为:

.my_dot_directory
.my_dot_file
my_directory
my_file

模式说明

  • .[!.]*:匹配所有以.开头但第二个字符不是.的文件/目录,精准排除.和..
  • *:匹配所有不以.开头的常规文件/目录

简化方案(开启dotglob选项)

如果开启Bash的dotglob选项,*会自动匹配所有以.开头的文件/目录(仍排除.和..),此时命令可简化:

# 开启dotglob选项
shopt -s dotglob
ls -d *
# 关闭选项可执行:shopt -u dotglob

内容的提问来源于stack exchange,提问作者Rob Bednark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 14:35:06