公司的產品有點復雜,有些功能又只能通過命令行完成。
但是有的時候產品容易被默認安裝到c:\Program Files\這樣包含空格的路徑下,那么在命令行中輸入一個帶空格的file path作為參數往往會出錯。所以大家都流傳著這樣一種說法:咱們公司的產品安裝的時候選擇的目錄千萬不要包含空格。
但是,一個那么大的產品裝好了,使用命令行配置的時候發現path帶空格命令過不去,而卸載重裝太恐怖了,怎么辦?
現在有兩個辦法來解決這個問題
1)用縮寫。比如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;
2)繞過去,創建一個鏡像。例如在cmd中輸入 subst w: "C:\Documents and Settings\hopeshared"。然后就可以直接用w:\替代C:\Documents and Settings\hopeshared了