Windows 10 命令提示符重命名文件覆盖文件名而不是前置
Windows 10 Command Prompt rename files overwrites file names instead of prepending
我的文件夹中有这些文件:
aaa.txt
bbb.txt
ccc.txt
我想在所有文件名前加上 1_
,所以我尝试在 Windows 命令提示符中编写:
rename * 1_*
这样做我想得到这个结果:
1_aaa.txt
1_bbb.txt
1_ccc.txt
但是我得到的是:
1_a.txt
1_b.txt
1_c.txt
它不是在前面加上,而是从头开始覆盖名称。根据这篇 (https://www.computerhope.com/renamehl.htm) 文章,这确实是预期的行为。
但在这篇 (https://www.windowscentral.com/how-rename-multiple-files-bulk-windows-10) 文章中,他们展示了一个示例,其中他们正在增加文件名第一部分的长度,如下所示:
ren nyc_*.* newYork_*.*
所以这似乎与我想做的相似,但是当我尝试那个确切的例子时,它不是那样工作。同样,它只是覆盖名称的第一部分而不添加任何内容,然后我最终 nyc_(1).jpg
变成 newYork_.jpg
(唯一编号被覆盖)。
第二条明显错了吗? 如何做 我只是用批处理行在一堆文件前加上一些东西?
一种方法是创建一个临时批处理文件来进行重命名。
首先,将您的目录转储到一个文本文件并关闭格式:
dir *.txt /B > list.bat
在记事本中打开它,然后将该裸列表复制到 Excel 之类的地方(或者如果您有一个功能强大的文本编辑器,您可以使用它。)然后您可以创建一个公式,例如:
="rename " & A1 & " 1_" & A1
这将为您构建一个单独的重命名命令列表,一次更改每个文件,如下所示:
A B
aaa.txt rename aaa.txt 1_aaa.txt
bbb.txt rename bbb.txt 1_bbb.txt
ccc.txt rename ccc.txt 1_ccc.txt
将该新列复制回记事本并保存。
运行 并丢弃您的新批处理文件,所有内容都将重命名。
为了从纽约到纽约,您需要做更多的工作...
="rename " & A1 & " NewYork" & MID(A1,4,99)
...将从名称中删除左边的三个字符替换它们给你:
rename nyc_(1).jpg NewYork_(1).jpg
forfiles /m *.txt /C "cmd /c 重命名@file 1_@file"
我的文件夹中有这些文件:
aaa.txt
bbb.txt
ccc.txt
我想在所有文件名前加上 1_
,所以我尝试在 Windows 命令提示符中编写:
rename * 1_*
这样做我想得到这个结果:
1_aaa.txt
1_bbb.txt
1_ccc.txt
但是我得到的是:
1_a.txt
1_b.txt
1_c.txt
它不是在前面加上,而是从头开始覆盖名称。根据这篇 (https://www.computerhope.com/renamehl.htm) 文章,这确实是预期的行为。
但在这篇 (https://www.windowscentral.com/how-rename-multiple-files-bulk-windows-10) 文章中,他们展示了一个示例,其中他们正在增加文件名第一部分的长度,如下所示:
ren nyc_*.* newYork_*.*
所以这似乎与我想做的相似,但是当我尝试那个确切的例子时,它不是那样工作。同样,它只是覆盖名称的第一部分而不添加任何内容,然后我最终 nyc_(1).jpg
变成 newYork_.jpg
(唯一编号被覆盖)。
第二条明显错了吗? 如何做 我只是用批处理行在一堆文件前加上一些东西?
一种方法是创建一个临时批处理文件来进行重命名。 首先,将您的目录转储到一个文本文件并关闭格式:
dir *.txt /B > list.bat
在记事本中打开它,然后将该裸列表复制到 Excel 之类的地方(或者如果您有一个功能强大的文本编辑器,您可以使用它。)然后您可以创建一个公式,例如:
="rename " & A1 & " 1_" & A1
这将为您构建一个单独的重命名命令列表,一次更改每个文件,如下所示:
A B
aaa.txt rename aaa.txt 1_aaa.txt
bbb.txt rename bbb.txt 1_bbb.txt
ccc.txt rename ccc.txt 1_ccc.txt
将该新列复制回记事本并保存。 运行 并丢弃您的新批处理文件,所有内容都将重命名。
为了从纽约到纽约,您需要做更多的工作...
="rename " & A1 & " NewYork" & MID(A1,4,99)
...将从名称中删除左边的三个字符替换它们给你:
rename nyc_(1).jpg NewYork_(1).jpg
forfiles /m *.txt /C "cmd /c 重命名@file 1_@file"