如何根据bash或linux命令行中的模式批量重命名文件

时间:2015-10-23 02:30:29

标签: regex linux bash

我的情况是我有数百个文件被错误命名。这些文件都遵循_XXXX_other.jpg的模式,我需要将它们全部移到_XX_XX_other.jpg。

显然,这里的解决方案将有多个部分。不幸的是,我甚至无法组合一个简单的正则表达式来匹配文件模式。我尝试使用:

ls -l | grep -e *.[0-9]{4}"_other.jpg"$

不幸的是,这匹配了目录中的所有内容,而不仅仅是具有该模式的文件。如果我能想出grep,我会做一个for循环,如下:

for i in $(<grep here>); do mv "$i" "${i/<same regex here/?????}"; done

我放弃了我的方法,但我很好奇是否真的有办法在bash脚本中执行此操作或仅从命令行执行此操作。

0 个答案:

没有答案