我想制作一个批处理程序来启动我的所有Web浏览器,并将它们打开到保存在计算机本地存储中的网站上。一切正常,直到将URL复制到cmd并更改链接为止。
start "" "Google Chrome" "file:///C:/Users/User/Desktop/Programming/Web%20Dev/Websites/PRP%20Website/index.html"
在我运行此代码时,两个地方都存在%20,cmd中只有0,因此新代码看起来像这样
start "" "Google Chrome" "file:///C:/Users/User/Desktop/Programming/Web0Dev/Websites/PRP0Website/index.html"
我确实知道我可以更改文件夹名称,并且该问题将得到解决,但是我希望可以通过代码而不是文件名来解决此问题
答案 0 :(得分:1)
核心问题是cmd.exe会将“%2”解释为命令行中的第二个参数。由于命令行上没有第二个参数,因此“%2”将不作任何替换。可以通过以下方法克服此问题:
1)用空格“”字符替换“%20”
2)用另一个“%”字符转义“%”,得到“ %% 20”。