我遇到了一个问题,我的一个批处理文件位于一个包含 和 符号的目录中。
当我尝试在批处理文件上运行 cmd/c 时,即使路径是双引号的, 和 符号也会弄乱 cmd 程序。
C:\>cmd /c "C:\This & That\batch.bat"
'C:\This' is not recognized as an internal or external command,
operable program or batch file.
The system cannot find the path specified.
我不知道该怎么办。我尝试使用 ^& 转义 & ,但这似乎不起作用,因为我已经准备好用双引号了。
如果我从没有 & 符号的目录运行相同的命令行,它可以正常工作。
C:\>cmd /c "C:\This and That\batch.bat"
C:\>echo "Hi There"
"Hi There"
感谢您的帮助。
最佳答案
所以这将是最好的方法。
您还需要使用 ^
转义 &
并运行双双引号。
cmd /c ""C:\This ^& That\batch.bat""
或者您可以设置一个位置变量并使用 &&
依次运行 set
和 cmd/c
。
set "location=C:\This ^& That" && cmd /c ""%location%\batch.bat""
关于windows - cmd/c 以及文件路径中的 & 符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44046888/