【发布时间】:2016-05-25 08:28:17
【问题描述】:
这个目录下有很多文件:
[ichen@ui01 data]$ ls
data.list
data.root
ntuple.data15_13TeV.00276262.DAOD_FTAG2.root
ntuple.data15_13TeV.00276329.DAOD_FTAG2.root
ntuple.data15_13TeV.00276336.DAOD_FTAG2.root
ntuple.data15_13TeV.00276416.DAOD_FTAG2.root
ntuple.data15_13TeV.00276511.DAOD_FTAG2.root
我想创建一个列表,其中仅包含具有以下模式的文件:
[many chars].[many chars].[many numbers].[many chars].root
匹配文件名,例如:
ntuple.data15_13TeV.00276262.DAOD_FTAG1.root
ntuple.data15_13TeV.00276329.DAOD_FTAG2.root
ntuple.data15_13TeV.00276336.DAOD_FTAG3.root
etc...
如何使用正则表达式来实现这个目标? 也许我们可以使用这种语法:
for f in `ls`;do if [....];then echo $f;fi;done > log.list
【问题讨论】:
-
pattern like-> 完全一样?你到底是什么意思?你能用文字描述应该是什么格式或提供多个匹配文件名的例子吗? -
@Dropout 嗨,我编辑了我的问题以满足您的要求。