Windows7
出自福留子孫
目錄
連結
分為硬連結與軟連結,軟連結又分為捷徑、目錄連接點、符號連結。
硬軟連結圖示
Data | Entry | |
---|---|---|
檔案內容← ↖ |
oldFileName | ↰ │ │ │ ┘ |
newHardLink | ||
newSoftLink |
- 硬連結(Hard Link,上圖紅線)會連結到內容磁區,如果OldFileName被刪除,但因為NewHardLink仍然存在,因此其內容仍會保留在系統裡。
- 如果修改OldFileName的內容,則因為NewHardLink也指向同一個內容磁區,因此其內容也同步變動了。
- OldFileName與所有的NewHardLink都刪除,這個檔案的內容磁區才會被清除。
- 軟連結(Soft Link,上圖藍線)是連向檔案項目(Entry),如果 OldFileName 被改名或刪除,則 NewSoftLink 就找不到內容了。
- windows 的軟連結分為三種:捷徑(short cut)、目錄連接點(junction)、符號連結(symbolic)。
連結 類型 | 硬連結 | 軟連結 | ||
---|---|---|---|---|
捷徑 | 連接點 | 符號連結 | ||
dir時代稱 | 無 | 無 | JUNCTION | SYMLINK |
本質 | Entry | 檔案 | 目錄掛載 | Entry |
連結目錄 | ╳ | ○ | ○ | ○ |
連結檔案 | ○ | ○ | ╳ | ○ |
OS限制 | NTFS | 不限 | NTFS | NTFS |
跨分割區 | ╳ | ○ | ○ | ○ |
掛上SMB | ╳ | ○ | ╳ | ○ |
掛載分割 | ╳ | ╳ | ○ | ╳ |
複製 | ○ | ○ | ╳ | ╳ |
del,rd | ○ | ○ | ○ | ○ |
開始版本 | Win2000 | Win95 | Win2000 | Vista |
- 管理員權限才能建立符號連結。
- 符號連結可以指向不存在的物件,在建立符號連結時,系統並不會檢查物件是否存在。
將目錄掛載成虛擬磁碟
SUBST,從 DOS 起各版本皆可用。
SUBST [drive1: [drive2:]path]
- drive1:指定虛擬磁碟機。
- [drive2:]path要指定給虛擬磁碟機的實際磁碟機與路徑。
- 刪除虛擬的磁碟機:
SUBST drive1: /D
- 不加任何參數會顯示目前所有虛擬磁碟機的清單。
win2000、XP的連結
硬連結
在文字命令模中使用 fsutil.exe :fsutil hardlink create 硬連結 目的檔案
由於硬連結的地位等同於檔案,所以刪除硬連結的作法和刪除檔案一樣。刪除一個硬連結並不會損及檔案,要將所有的某個檔案的所有硬連結及其 entry 全部刪除才會刪掉此檔案。
目錄連接點
在 Windows 2000、XP、Windows Server 2003 使用linkd.exe、mountvol.exe建立目錄連接點(Directory Junction),但不支援中文目錄名稱。
- linkd.exe用來掛上目的路徑,可在Windows Server 2003 Resource Kit Tools中找到。
- 掛載命令為:
linkd 資料夾 目的路徑
- 卸載命令為:
linkd 資料夾 /D
- 例如:
linkd 桌面 userProfile\桌面
- 其中userProfile是使用者設定檔名稱。
- 顯示您桌面的內容:
dir 桌面
- 掛載命令為:
- mountvol.exe 用來掛上分割區,可在 windows/system32 中找到。步驟為:
- 列出各分割:
mountvol
- 會列出如:
\\?\Volume{e2464851-8089-11d2-8803-806d6172696f}\ C:\ …
- Volumek之後是分割的唯一碼,即 GUID (全域唯一識別元)。
- 會列出如:
- 建好資料夾之後下以下指令,便可將分割掛載成資料夾:
mountvol 資料夾 \\?\Volume{e2464850-8089-11d2-8803-806d6172696f}\
- 解除掛載:
mountvol \\?\Volume{e2464850-8089-11d2-8803-806d6172696f}\ /D
- 列出各分割:
資料夾捷徑
資料夾捷徑(Folder Shortcut),可以模擬目錄連接點。本質為一個帶有唯讀屬性的資料夾,裡面含有desktop.ini和target.lnk兩個隱藏檔:target.lnk為指向目標資料夾的普通捷徑;由desktop.ini定義該文件夾為「文件夾捷徑」,其內容為:[.ShellClassInfo] CLSID2={0AFACED1-E828-11D1-9187-B532F1E9575D}
資料夾捷徑只在 Vista 以下版本有效,在 windows7 中無效。手作步驟如下:
- 建一「目的資料夾」的捷徑。
- 將此捷徑改名為「target.lnk」
- 建一資料夾,裡面放上面的 target.lnk 。
- 將此資料夾屬性改為「唯讀」。
- 操作此一資料夾,等同操作目的資料夾。
請參考中文維基百科「符號連結」條目中「文件夾捷徑」段。
符號連結
Vista 以上版本才有符號連結功能,此版本尚未提供符號連結功能。
Windows7及Vista
mklink 指令
建之連結
mklink [[/D] | [/H] | [/J]] link target
- /D –建之指向目錄的符號鏈接,如果不指定此參數,預設為建立指向檔案的符號鏈接。
- /H –建立硬鏈接(Hardlink),或稱永久連結。
- /J –建立NTFS目錄連接點(Junction point)。
- link –指定符號鏈接的名字
- target –指定符號鏈接指向的對象的路徑(相對或絕對皆可)。
del filename(要被刪除的符號連結的名字)以Windows7為例:
先到「開始/附屬應用程式/命令提示字元」按右鍵,以「系統管理員身份執行」。 cd "\ProgramsData\Microsoft\Windows\Start Menu\Programs" mklink /D Copy D:\Programs\Copy
刪除連結
和普通目錄(資料夾)一樣,刪除連結也可以使用rd命令,具體語法如下:rd directoryname(要被刪除的符號連結的名字)
應用程式 Symlink Creator
應該是透過 mklink ,所以無法用於 XP 。