.bat 或 .cmd 中的 APPDATA 未打印带空格的正确名称

.bat 或 .cmd 中的 APPDATA 未打印带空格的正确名称

我有不同的用户,他们的名字有空格和没有空格:John Doe、Jane Susy 我尝试在命令提示符中输入 %APPDATA%,但我得到的只是 John / Jane。

我应该如何编写批处理/cmd 文件脚本,以便它支持带有空格的文件夹?

Copy /y %APPDATA%\Folder\Templates\abc.txt %APPDATA%\Folder\Templates\FoldABC >nul

当我使用 echo %AppData% 时,我得到了全名 John Doe / Jane Susy。当我只输入 %AppData% 时,我得到了 John / Jane

我正在尝试执行以下操作:

if exist %APPDATA%\Folder\Templates\abc.txt (
   Copy /y %APPDATA%\Folder\Templates\abc.txt %APPDATA%\Folder\Templates\FoldABC >nul
)

这是我收到的错误:

if exist C:\Users\John Doe\AppData\Roaming\Microsoft\Templates\abc.txt(
'Doe\AppData\Roaming\Folder\Templates\abc.txt' is not recognized as an internal or external command, operable program or batch file. 

答案1

将每个路径放在引号之间并用空格隔开:

Copy /y "%APPDATA%\Folder\Templates\abc.txt" "%APPDATA%\Folder\Templates\FoldABC" >nul

相关内容