batch-file - Set /p 中的一次设置值
问题描述
我创建了一个批处理文件,可以在不同的服务器中复制 pdf 文件。桌面文件的文件夹目的地的文件名必须像这样'2备份(用户名)'。
所以,我希望用户输入他们的名字一次,并将输入的名字作为 /p 变量的默认值。(有点像在登录表单中输入密码时记住这一点)
set /p name=Input your name:
这样当我 xcopy 文件时,它看起来像这样:
xcopy "%setPath%\08_AUG\%day_month%\%code%\%code%sample.pdf" "%HOMEPATH%\Desktop\2 Backup %name%\%code%\" /D /E /C /I /Y /H
有人可以帮忙吗?
解决方案
set /p
用此代码段替换您以name
在本地设置和持久化。
if not defined name (
set /p "name=Input name for 2 Backup:"
call setx name "%%name%%"
)
在不知道您的批处理延迟扩展状态的情况下使用伪调用代替。
推荐阅读
- sql - 在更多行和列上创建 sql pivot
- css - 用于描边动画的具有多个原点的 SVG 圆
- bixby - 在向用户显示输入视图时,如何让用户提供 NL 输入?
- javascript - 7 位数字的正则表达式,中间有可选的特殊字符
- symbolic-math - diff 函数不适用于希腊字母
- node.js - 有没有办法在后端( node js )上使用 webpack 构建 node_modules ?
- sql-server - 是否总是可以在不使用 sql 中的临时表的情况下使用 while 循环和变量将多个空间选择转换为单个查询?
- flutter - ListView 和 ListView.builder 有什么区别,我们可以使用 Listview.builder 创建、验证和提交表单吗?
- excel - VBA代码将两列与颜色进行比较并将其与另一列进行比较
- python - 如何导入没有分隔符且逗号表示缺失值的 csv 或 txt 文件