如何在Windows cmd中重命名文件名时省略文件名开头的字符?

sar*_*mar 6 windows command-line rename cmd.exe

我想知道如何在 Windows 中重命名文件时省略文件名的第一个字符cmd

就我而言,我有一堆文件,例如:

#test1.txt
#test2.txt
#test3.txt
#test4.txt
#test5.txt
Run Code Online (Sandbox Code Playgroud)

我想重命名 cmd 提示符中的所有文件,如

test1.txt
test2.txt
test3.txt
test4.txt
test5.txt
Run Code Online (Sandbox Code Playgroud)

文件在c:\myfiles\.

小智 8

忘记复杂的脚本吧。

rename是一个非常古老且从未正确完成的命令。如果您没有正确使用它,结果可能会让您感到惊讶。

例如,删除前缀abcdabcd1.txtabcd2.txtabcd3.txt,等为了得到1.txt2.txt3.txt,只需键入

rename "abcd*.txt" "////*.txt"
Run Code Online (Sandbox Code Playgroud)

您需要与/要删除的初始字符数相同的数量。

对两个参数都使用双引号。

我从另一个线程上的其他人那里复制了上面的内容。

请注意,这会正确处理带空格的文件名。


Aya*_*yan 6

几个月前我遇到了类似的问题。事实证明,使用 DOS 删除文件名开头的字符有点棘手。我发现这个网站对此有一个很好的解决方案。

您需要做的就是cd进入包含文件的目录并执行这两个命令。

REN *.* " *.*" 
FOR %v IN (*.*) DO REN "%v" %v
Run Code Online (Sandbox Code Playgroud)

这应该替换所有文件名中的第一个字符。

这个想法是使用第一个命令用空格替换不需要的字符数,然后使用循环和命令REN删除这些空格。FORREN