【问题标题】:Linux rename regex [duplicate]Linux重命名正则表达式[重复]
【发布时间】:2016-03-20 01:46:39
【问题描述】:

我想将文件 test123..-1.in、test123..-2.in 等的名称重命名为 test123.in。

我试过命令:

重命名 -/d.in .in *.in 和许多类似但没有一个工作(你能解释为什么吗?)。 然后我尝试重命名's/.[0-9]*.in$/.in/'*.in,结果相同..

任何建议如何以简单的方式解决这个问题?我不想手动写。

感谢您的帮助。

【问题讨论】:

  • 为什么要将每个文件重命名为 test123.in?执行结束时只有一个文件。
  • 您是真的想将文件重命名为具有相同的文件名(这没有意义),还是要将多个文件合并为一个文件?
  • 不,我有很多测试文件,这就是为什么我写 test123... 的原因。它们实际上会像 test12345-5、test12346-3、test12353-2 等,我希望它们只像 test12345、test12346、test12353。

标签: regex linux


【解决方案1】:

你可以使用这个rename:

rename 's/\.+-\d+\././' test123..-*in

或根据以下 OP 的评论:

rename 's/-\d+\.in/.in/' *.in

【讨论】:

  • 准确地说,这不是我想要的,但它告诉我应该怎么做,所以谢谢你:) rename 's/-\d+.in/.in/' *.in
猜你喜欢
  • 2018-08-22
  • 2016-12-06
  • 2014-04-03
  • 2013-08-31
  • 2019-06-12
  • 1970-01-01
  • 2012-08-02
  • 2015-04-23
相关资源
最近更新 更多