在DOS中重命名可变长度的文件

时间:2013-07-30 06:55:07

标签: dos windows-shell file-rename batch-rename

我正在尝试将'@'的文件重命名为'_'。 我知道有一种替换文件中第n个字符的直接方式。

如果@符号出现在不同文件的不同位置

,我们如何重命名文件?

例如,假设目录中存在以下文件

 a@file.txt   
 asdf@kfi.png
 uiuydfjfk@kdi.txt

我希望输出像这样

 a_file.txt
 asdf_kfi.png
 uiuydfjfk_kdi.txt

无论如何要做到这一点?

1 个答案:

答案 0 :(得分:0)

这使用了来自 - http://www.dostips.com/forum/viewtopic.php?f=3&t=3855

的名为repl.bat的帮助程序批处理文件

它创建renfile.bat供您检查错误,然后执行。

dir *@* /b |repl "(.*)(@)(.*)" "ren \x22$&\x22 \x22$1_$3\x22" x >renfile.bat