如何用Linux的find命令单行输出符合多条件的当前目录文件
解决方案
你可以通过find命令的多条件组合(默认逻辑与)来实现,单行命令如下:
find . -maxdepth 1 -type f -name "*a.csv" -name "*b*"
参数说明:
-maxdepth 1:仅搜索当前目录,不递归子目录(若需递归可移除该参数)-type f:只匹配普通文件,排除目录、软链接等非文件项-name "*a.csv":匹配以a.csv结尾的文件,满足「扩展名前以a结尾」的要求-name "*b*":匹配文件名包含字符b的文件,满足「文件名含b」的要求
两个-name条件默认同时生效,自然满足所有条件的交集,且第一个条件已经限定了.csv扩展名。
如果偏好正则表达式写法,也可以用:
find . -maxdepth 1 -type f -regex ".*/.*b.*a\.csv"
内容的提问来源于stack exchange,提问作者Ad270
相关产品推荐
相关产品推荐

