如何将多个文件重命名为一个名称

如何将多个文件重命名为一个名称

我想重命名这些文件;

2000.jpg
B001.jpg 
9002.jpg
D006.jpg

以下这些名字

ICON000.jpg 
ICON001.jpg 
ICON002.jpg 
ICON006.jpg

分别。

答案1

prename(或类似与file-rename):

prename -n 's/^[^\d]+/ICON/' *.jpg

这会将非数字字符替换为ICON

输出:

A000.jpg renamed as ICON000.jpg
B001.jpg renamed as ICON001.jpg
C002.jpg renamed as ICON002.jpg
D006.jpg renamed as ICON006.jpg

删除-n来执行该操作。

答案2

如果您有重命名实用程序,请阅读有关如何进行字符串替换的手册页。

如果您没有重命名实用程序,请使用某种 for 循环来进行重命名。像下面这样的东西应该有效:

for f in *.jpg; do
    mv ${f} $(echo ${f} | sed -e 's#^.#ICON#')
done

sed 命令只是用字符串 ICON 替换第一个字符。

相关内容