cmd 调用exe 文件名、目录名或卷标语法不正确

C:\Windows\System32\cmd.exe /c "C:\Users\dala\Desktop\adb\adb.exe" install "C:\Users\dala\Desktop\dfddd\test.apk"

windows cmd 窗口执行上述命令返回文件名、目录名或卷标语法不正确 但是去掉任一文件路径的双引号就可以正确执行 求解释

3个回答

这个主要的问题应该是出在cmd上,这个解释器本身不够高级,所以对引号解释不够友好。
假如路径中有空格的话就是用8.3短文件名吧,例如C:/Program Files写成C:/Progra~1

Dala_
Dala_ 突然发现短路径并不能解决问题,好像非c盘获取不到短路径的。。
接近 4 年之前 回复
Dala_
Dala_ 恩,解决了,Windows有提供获取段路径的方法 GetShortPathName
接近 4 年之前 回复
hijack00
hijack00 嗯嗯,这个确实是个问题。波浪号后面的1,2,3是序号,但是不知道他是怎么排序的
接近 4 年之前 回复
Dala_
Dala_ 短文件名可以解决,但是生成算法不知道的,看了https://support.microsoft.com/zh-cn/kb/142982 但是不理解~2~3还有其他的怎么生成的
接近 4 年之前 回复

加上双引号和不加双引号对于程序来说是不同的参数

Dala_
Dala_ 恩,这个是的,但是这个错误是windows报的。
接近 4 年之前 回复

去掉双引号 把 \ 改成 /

Dala_
Dala_ 去掉是可以执行的,但是加双引号的目的是为了解决路径中有空格的问题,去掉的话, 文件路径有空格还是解决不了的呀
接近 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐