批处理文件-命令-用于重命名文件夹的动态输入

百合
  • 我想将文件夹重命名为仅具有当前日期,或者甚至是.old
  • 动态文件夹重命名

我想要求用户输入一次,让它找到该文件夹​​,然后在找到它时将其重命名。无论我做什么我都会收到语法错误

@ECHO off
cls

set /P FOLDER="What the Folder Name: "
rename "%userprofile%\Downloads\"%FOLDER%"" "%userprofile%\Downloads\"%FOLDER%" - %date:/=-%"
pause
cls
goto start

输出:

What the Folder Name: folder
The syntax of the command is incorrect.
Press any key to continue . . .
格哈德

运行ren /?rename /?状态:

RENAME [drive:][path]filename1 filename2.
REN [drive:][path]filename1 filename2.

换句话说,我只希望将新名称作为第二个参数。这将因语法错误而失败:

ren "D:\My Folders\Old name" "D:\My Folders\New name"

这将执行重命名的位置:

ren D:\My Folders\Old name" "New Name"

此外,您不需要有趣的报价。您只需要将整个字符串加引号一次,以确保cmd不会将空格视为命令/参数分隔符。因此,此代码应执行您想要的操作:

@echo off & cls
set /p "FOLDER=What the Folder Name: "
rename "%userprofile%\Downloads\%FOLDER%" "%FOLDER%" - %date:/=-%"
pause
cls
goto start

这么说,您提到的是动态的。这里没有什么是动态的。这是对用户的所有静态请求,希望得到有效结果的答案。因此,您确实可以使此过程更具动态性,但是只有在我对您的要求有更多详细信息的情况下,我才能提供帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章