我正在尝试在特定文件夹中重命名具有特定格式的文件 . 我这样做是通过创建一个带有文件名的文本文件并在循环for语句中引用该文本文件 . 当我在cmd中逐行运行命令时它工作正常但是当我尝试作为批处理文件运行时它不起作用 . 批处理文件保存在我希望操作完成的文件夹中,所以我假设我不需要声明目录 . 任何帮助将非常感激!
dir > file.txt
for /f "tokens=1,2,3,4 delims=_." %i in (file.txt) do ren "%i_%j_%k.%l" "%date:~10%%date:~4,2%%date:~7,2%_%time:~0,2%h%time:~3,2%m%time:~6,2%s_%k.%l"
:END
1 回答
在cmd脚本中编写循环时,for变量(例如:%i)需要使用额外的%进行转义,因此它变为:
要了解更多工作原理,请在cmd中键入
for /?
.有趣的部分: