我正在尝试搜索文件并修剪名称中带有数字的相似文件
来自
。
find -E . -iregex ".*myfile.*([^0-9]{1,})\.txt"
摆脱myfile_00.txt,但摆脱myfile_00_04_version.txt
我尝试了OSX查找和GNU查找,都无济于事。
答案 0 :(得分:2)
第二个.*
使模式匹配myfile
和非数字后跟.txt
之间的任何字符。您需要删除它,然后使用
.*myfile[^0-9/]{1,}\.txt
请注意,[^0-9/]
将匹配数字和/
(保留在文件名内)以外的任何字符。
或者,要确保文件名以myfile
开头:
(.*/)?myfile[^0-9/]{1,}\.txt
其中(.*/)?
与可选的子字符串匹配,从路径的开始到最后一个/
。