batch-file - 批处理文件-命令-重命名文件夹的动态输入
问题描述
- 我正在寻找重命名文件夹以仅包含当前日期,或者甚至是 .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
说了这么多,你提到了动态。这里没有什么是动态的。这是对用户的所有静态请求,并希望得到有效结果的答案。所以你真的可以让这更加动态,但只有当我对你的要求有更多的细节时,我才能提供帮助。
推荐阅读
- java - 接口序列化
- java - 如何从 Jenkins 启动 java 服务
- python - 有没有办法让 gensim LDA 自动选择最佳主题数量
- javascript - 将应用程序部署到 Heroku 后无法获取 API 数据(在本地完美运行)
- reactjs - 如何使用 React JS 在 Redirect 上执行函数
- php - 为什么无法识别用于重新登录的 Laravel League/ouath2 令牌
- javascript - 对数组对象内的数组元素执行操作
- php - 将对象数组转换为 Vue js 和 php 中的对象
- javascript - 画布在 60Hz 显示器上闪烁,在 144Hz 显示器上工作正常
- ansible - Openstack train aio 安装问题