无法在 Windows 命令 shell 中转义空格
如果我执行
cmd /c "%programfiles%\mycode\md5sums.exe" %temp%
它工作得很好。但是当我执行
cmd /c "%programfiles%\mycode\md5sums.exe" %programfiles%
时,出现以下错误 -
Error: Unable to read file/directory C:\Program
这意味着 md5sums.exe 正在尝试打开 C:\Program
而不是 %programfiles% 给出的完整路径,
我必须使用 cmd /c
因为我已经远程运行此命令。
我该如何让它发挥作用? 我尝试过使用“%programfiles%”,但在这种情况下,甚至 md5sums.exe 也没有被执行。
最终我想使用 md5sums.exe 提供的开关“/b”,但此时我什至坚持让 md5sums 在 %programfiles% 上运行
If I execute
cmd /c "%programfiles%\mycode\md5sums.exe" %temp%
it works just fine. But when I execute
cmd /c "%programfiles%\mycode\md5sums.exe" %programfiles%
I get below error-
Error: Unable to read file/directory C:\Program
which means that md5sums.exe is trying to open C:\Program
as opposed to full path given by %programfiles%
I've to use cmd /c
as I've to run this command remotely.
How do I make it work?
I've tried using `"%programfiles%" but in this case even md5sums.exe is not getting executed.
Eventually I would like to use switch "/b" provided by md5sums.exe but at this point of time I am stuck at even making md5sums run on %programfiles%
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试:
否则,您最终会得到类似的结果:
并最终将两个参数传递给 md5sums,而不是单个路径。
Try:
Otherwise, you end up with something like:
and end up passing two arguments to md5sums, not a single path.
你需要在开始和结束处使用双引号
例如:
cmd /c ""%programfiles%\mycode\md5sums.exe" "%programfiles%""
you need a double double quote at start and end
e.g.:
cmd /c ""%programfiles%\mycode\md5sums.exe" "%programfiles%""