文件路徑詳解

 

    大家都知道在Windows中“/”符號是路徑的分隔符號,比如“C:/Windows/”的意思就是C分區中的Windows文件夾,“C:/Windows/System.exe”的意思就是C分區中的Windows文件夾中的System.exe文件,我們繼續假設一下,如果文件名中有“/”符號會怎麼樣呢?假如“S/”是一個文件的名字,這個文件位於:“F:/”,他的路徑就是“F:/S/”,當我們試圖訪問的時候Windows會錯誤的認爲我們要打開的文件是F分區的S文件夾,這樣Windows就無法打開並且會返回一個錯誤,因爲以上的路徑並不存在。

    也許你現在正在嘗試創建“S/”文件,但是Windows會提示你:“/”符號是不能作爲文件、文件夾的名字的。看來Windows還是早已想到這一點了的。OK !我們繼續進行,就不信不能建立包含“/”符號的文件。

    現在打開你的電腦,我們要做一些很有趣的嘗試。進入Windows後點擊:開始>運行,然後輸入“cmd”並回車進入命令提示符,我們就是要利用它完成我們剩下的測試,以下包含了很多命令,其中{}中的字符是註釋:

----------------------------------------------
Microsoft Windows XP [版本 5.1.2600]
(C) 版權所有 1985-2001 Microsoft Corp.
F:/Test>mkdir s/ {我們的第一次嘗試,結果Windows只創建了S文件夾,"/"被忽略掉了。}
(H0F:/Test>mkdir s/s1/ {還是失敗,Windows先創建了S文件夾,然後在S內創建s1文件夾。}
F:/Test>mkdir s./ {"s./"被解析成S,"./"又被忽略了。}
子目錄或文件 s./ 已經存在。
F:/Test>mkdir s../ {終於成功了,現在你可以在資源管理器看到"s.",但卻無法打開/刪除。}
F:/Test>mkdir s.../ {又成功了,在資源瀏覽器能看到"s..",可以打開但是無法刪除。}
----------------------------------------------

爲什麼會這樣?

    我們先說你看到的這個“S.”文件夾,他即不能打開也不能刪除,不能打開是因爲他的實際路徑是“F:/Test/s../”(我們自己創建的所以可以確定他的實際路徑),但是在Windows資源管理器中名字變成了“S.”也就是說當你試圖打開它的時候Windows實際上嘗試打開“F:/Test/s./”當然是不能打開的,路徑並不存在,所以Windows會報錯。不能刪除也是因爲這個,Windows把一個實際存在的文件路徑錯誤的解析爲一個不存在的路徑,並進行操作當然是無法完成的。

    該說“S..”這個文件夾了,這個文件夾可以打開,但是卻無法刪除。你以爲Windows真的是打開了我們創建的“s.../”文件了嗎?我們做下面的試驗你就明白了:

----------------------------------------------
Microsoft Windows XP [版本 5.1.2600]
(C) 版權所有 1985-2001 Microsoft Corp.
F:/Test>echo 1 > Txt1.txt {創建“F:/Test/Txt1.txt”文件}
F:/Test>copy Txt1.txt s../ {複製剛剛創建的文件到“s../”,就是資源管理器的“S.”。}
已複製 1 個文件。
F:/Test>echo 2 > Txt2.txt {創建“F:/Test/Txt2.txt”文件}
F:/Test>copy Txt2.txt s.../ {複製剛剛創建的文件到“s.../”,資源管理器的“S..”。}
已複製 1 個文件。
---------------------------------------------

    現在回到你的資源管理器打開“S..”文件夾,你看到了什麼?“Txt1.txt”文件怎麼會在這裏?我們剛剛的確複製到了“S.”呀?難道我們打開“S..”文件夾實際上就是打開了“S.”?不錯事實就是這樣。其實如果你再創建一個“S”文件夾的話“S.”就能打開了,但是實際上打開的是“S”。

該怎麼刪除它呢?刪除它也不算很難,但是常規的方法是絕對刪不掉的,有兩種方法可供選擇:

1 進入DOS刪除(不推薦)
2 還是進入命令提示符然後輸入“rmdir 目錄名”,目錄名就是你創建的時候的名字,如果忘記了可以先在資源管理器查看,然後加上“./”。如果提示“文件夾不是空的”應該加上“/s”參數。刪除實例:

----------------------------------------------
Microsoft Windows XP [版本 5.1.2600]
(C) 版權所有 1985-2001 Microsoft Corp.
F:/Test>dir
驅動器 F 中的卷是 BGTING
卷的序列號是 2C8E-FE1C
F:/Test 的目錄
1 個文件 9 字節
個目錄 3,390,029,824 可用字節
F:/Test>rmdir s..目錄不是空的。
F:/Test>rmdir s../ /s
s../, 是否確認(Y/N)? y
F:/Test>rmdir s.../ /s
s.../, 是否確認(Y/N)? y

總 結:

1 在Windows中創建“X../”文件夾後該文件夾將無法通過常規方法刪除,但是卻可以Copy文件進去,在資源管理器顯示爲“X.”,錯誤的指向“X”文件夾。(有點像快捷方式)

2 創建“X../”的方法是在命令行輸入“mkdir X../”。刪除它的方法是在命令行輸入“rmdir 目錄名”,目錄名就是你創建的時候的名字,如果忘記了可以先在資源管理器查看,然後加上“./”。如果提示“文件夾不是空的”應該加上“/s”參數。

3 創建空名文件夾

    這裏所說的空名文件夾,主要指的是文件夾名稱爲空白,具體地說就是文件夾的名稱爲空格字符,這類特殊文件夾不僅可以在MS-DOS窗口中被正常訪問,而且還可以在Windows窗口中被訪問到,甚至我們能借助WinZip之類的壓縮工具來對其進行壓縮或解壓縮操作。儘管在Windows界面中創建一個空名文件夾是一件非常困難的事情,事實上我們可以轉換思路,進入到MS-DOS窗口並利用已經久違了的“md”命令,創建名稱爲空格的特殊文件夾,下面就是具體的創建步驟:

   打開命令提示符,輸入字符串命令“md+空格”,緊接着按下鍵盤上的Alt功能鍵,同時在數字小鍵盤上直接輸入數字“255”,這樣一來空格字符的ASCII碼就會自動出現在“md”命令之後,單擊回車鍵後,在指定目錄下一個名稱爲空白的特殊文件夾就出現了。善於使用空白文件夾,我們有時能將一些重要的隱私信息隱藏其中,從而實現保護隱私安全的目的。

4 創建設備文件夾

      儘管在Windows狀態下我們也能創建一些由若干空格組成的空名文件夾,不過還有一些更爲特殊的文件夾,我們就無法在Windows窗口界面中直接創建了,比方說控制檯設備文件夾“con”,打印機設備文件夾“prn”等等;當我們嘗試在Windows狀態下創建“con”、“prn”這類特殊文件夾時,計算機往往會擅自做主地將文件夾名稱更爲“新建文件夾”。很明顯,要完成以系統設備名稱作爲文件夾名的特殊文件夾創建工作,必須使用特殊的創建技巧才行。要做到這一點,我們只要按照如下步驟就可以了:

  首先進入MS-DOS窗口的命令行提示符下,通過“cd”命令進入到要創建空白文件夾所在的目錄,之後在DOS命令行下再輸入字符串命令“md+設備名+/”,單擊回車鍵後,在指定目錄下一個名稱爲空白的特殊文件夾就出現了。考慮到設備文件夾在Windows狀態下是不能被刪除的,爲此善於使用設備文件夾,我們有時能可以用它來保存一些重要的信息,以防止這些信息被他人隨意刪除掉。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章