CmD空格轉義
在cmd中,如果路徑中存在空格報錯 可以有三種解決方法:
1、將存在空格的路徑用雙引號包起來,如:"D:/Program Files/xx";
2、將存在空格的名稱前6個字母表示,以后的用~1代替. 如:"D/Progra~1/xx"
解釋:
用縮寫。比如c:\Program Files縮寫為c:\Progra~1
再來刨根問底查查這個命名是否有規則,於是找到:
文件夾(sub-directry)名稱,以前是不允許帶空白的,后來允許帶空白,但由於有了空白,許多命令出現二義性,於是采用雙引號括起來的辦法。例如:
cd Documents and Settings
按老定義 等於 CD Documents, CD 命令找不到名叫Documents 的 directry
於是采用雙引號:
cd “Documents and Settings“
但用到 set PATH 時很麻煩,名字太長,雙引號時常括錯。於是采用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;
3、將存在空格的路徑進行繞道:繞過去,創建一個鏡像。例如在cmd中輸入 subst w: "C:\Documents and Settings\hopeshared"。然后就可以直接用w:\替代C:\Documents and Settings\hopeshared了