![如何将多个文件重命名为一个名称](https://linux22.com/image/11192/%E5%A6%82%E4%BD%95%E5%B0%86%E5%A4%9A%E4%B8%AA%E6%96%87%E4%BB%B6%E9%87%8D%E5%91%BD%E5%90%8D%E4%B8%BA%E4%B8%80%E4%B8%AA%E5%90%8D%E7%A7%B0.png)
我想重命名这些文件;
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 替换第一个字符。