【问题标题】:Linux rename multiple files at onceLinux一次重命名多个文件
【发布时间】:2022-01-26 04:19:12
【问题描述】:

我运行的是 Ubuntu 20.04。

我每天都要重命名几百万个文件。

是否可以使用单个命令或某种 shell 扩展来一次重命名所有文件,而不是使用 for 循环?

文件名如下所示

1_new.txt, 2_new.txt, 3_new.txt, 4_new.txt

预期输出

1.txt, 2.txt, 3.txt, 4.txt

【问题讨论】:

  • 您需要对它们进行迭代并一一重命名。这对你来说是一个解决方案吗?
  • 很确定有一个流行的重命名命令。
  • 你肯定需要遍历目录

标签: bash ubuntu


【解决方案1】:

这最终对我有用。

 rename 's/_new//' *_new.txt

我可以通过一个命令重命名所有文件。

【讨论】:

  • 另一个方便的工具是zsh的zmv命令。尽管您正在运行 bash,但没有什么能阻止您使用 zsh 并执行 zsh 'autoload zmv; zmv .....'。查看man zshcontrib 并搜索zmv。我并不是说它通常比 rename 更好或更差,但不同之处足以让您对其进行调查。
  • 太棒了。谢谢@user1934428
【解决方案2】:

我也遇到了重命名文件以获得更好的 seo 名称的挑战,并在 oh-my-zsh linux 终端上找到了 zmv。

为此我发布了live coding video on YouTube

【讨论】:

  • 谢谢 Rogoit。感谢您分享您的解决方案。
猜你喜欢
  • 2019-07-21
  • 1970-01-01
  • 2022-01-13
  • 2012-06-14
  • 1970-01-01
  • 2018-10-26
  • 2021-08-14
  • 2016-10-20
  • 2018-01-19
相关资源
最近更新 更多