【发布时间】:2020-01-11 13:47:03
【问题描述】:
我正在尝试从一组文件中删除一些子字符串。这些文件具有以下名称
0_00008.obj
0_00009.obj
0_00010.obj
0_00011.obj
我希望他们成为
8.obj
9.obj
10.obj
11.obj
我试过像这样使用rename
rename '/s/0_0+//;' *.obj
但是什么都没有发生? 我检查了正则表达式字符串,看起来它可以正确匹配我想要删除的内容,所以我是否使用了错误的重命名?
【问题讨论】:
-
0_00000.obj存在吗? -
不,第一个是0_00001.obj
-
哦,好吧,那么 Code Maniac 提供的answer 应该可以工作了。
-
我使用的模式有什么问题?
-
我不知道
rename的正则表达式引擎的细节,但使用像regex101.com 这样的正则表达式可视化工具会帮助你很多。对于初学者,您似乎正在尝试匹配正斜杠,但您的示例数据没有正斜杠。后面的分号也是如此。