当我们在开发过程中遇到执行cmd时,如:C:Program FilesJavajdk1.8.0_101binjava -jar xxx.jar
总是提示“C:Program 不是外部或内部命令,也不是可运行的程序”,如下图:
这是因为在执行命令时,命令中带有空格造成的,在执行cmd命令时尽量要避免或绕开,如果真正遇到了该问题,可以参考如下方案解决。
例如 C:Program Files的缩写为:C:Progra~1
缩写的规则:
采用8个字符缩写,即写头六个字母(略去空白),另加波浪号和1,首字母不足六个字母,略去空白,用了第二个词的字母,凑成六个。例如:
“Documents and Settings“ — DOCUME~1
“Local Settings” — LOCALS~1 (注意略去空白,用了第二个词的字母,凑成六个,再加波浪号和1)。
如果多个文件前6字符一样怎么办?为什么最后是1而不是0或者其他数字呢?看看这个例子
假设下面是你的C盘根目录中的文件夹:
Program Files
Progra file
Progra zhang
则三个目录分别表示为:C:Progra~1; C:Progra~2; C:Progra~3;
例如:在CMD中输入 subst w: “C:Documents and Settings”。然后直接用w:替代C:Documents and Settings使用