Ubuntu 20.04下按指定命名规则筛选列出目录文件的方法咨询
Ubuntu 20.04 环境下匹配目标文件的实现方案
方法1:Bash 通配符直接匹配
适合文件数量不多的场景,执行如下命令即可:
ls [^.]*.daily.csv
规则说明:
[^.]匹配所有**不包含英文句号.**的字符[^.]*代表daily.csv的前缀部分由任意数量的非点字符组成,确保前缀内没有额外的字段分隔符- 后缀固定匹配
.daily.csv,刚好命中单前缀.daily.csv格式的文件
方法2:find 命令匹配
适合目录下文件数量极多,避免ls出现参数长度溢出的场景,执行如下命令:
find . -maxdepth 1 -type f -regex '\./[^.]+\.daily\.csv'
规则说明:
-maxdepth 1限定仅扫描当前目录,不递归子目录-type f仅匹配普通文件,排除目录、链接等其他文件类型- 正则规则
\./[^.]+\.daily\.csv:先匹配当前目录前缀./,随后匹配1个及以上的非点字符作为唯一前缀,最后匹配固定后缀.daily.csv,完全符合筛选要求
内容的提问来源于stack exchange,提问作者usert4jju7
相关产品推荐
相关产品推荐

