Windows7

出自福留子孫
在2014年10月27日 (一) 12:37由丁志仁對話 | 貢獻所做的修訂版本

跳轉到: 導覽搜尋

連結

分為硬連結與軟連結,軟連結又分為捷徑、目錄連接點、符號連結。

硬軟連結圖示

Data Entry
檔案內容



oldFileName ↰



newHardLink
newSoftLink
  • 硬連結(Hard Link,上圖紅線)會連結到內容磁區,如果OldFileName被刪除,但因為NewHardLink仍然存在,因此其內容仍會保留在系統裡。
  • 如果修改OldFileName的內容,則因為NewHardLink也指向同一個內容磁區,因此其內容也同步變動了。
  • OldFileName與所有的NewHardLink都刪除,這個檔案的內容磁區才會被清除。
  • 軟連結(Soft Link,上圖藍線)是連向檔案項目(Entry),如果 OldFileName 被改名或刪除,則 NewSoftLink 就找不到內容了。
  • windows 的軟連結分為三種:捷徑(short cut)、目錄連接點(junction)、符號連結(symbolic)。
連結
類型
硬連結軟連結
捷徑連接點符號連結
dir時代稱JUNCTIONSYMLINK
本質Entry檔案目錄掛載Entry
連結目錄
連結檔案
OS限制NTFS不限NTFSNTFS
跨分割區
掛上SMB
掛載分割
複製
del,rd
開始版本Win2000Win95Win2000Vista
  • 管理員權限才能建立符號連結。
  • 符號連結可以指向不存在的物件,在建立符號連結時,系統並不會檢查物件是否存在。

將目錄掛載成虛擬磁碟

SUBST,從 DOS 起各版本皆可用。

  • SUBST [drive1: [drive2:]path]
    1. drive1:指定虛擬磁碟機。
    2. [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中找到。
    1. 掛載命令為:
      linkd 資料夾 目的路徑
    2. 卸載命令為:
      linkd 資料夾 /D
    3. 例如:
      linkd 桌面 userProfile\桌面
      • 其中userProfile是使用者設定檔名稱。
      • 顯示您桌面的內容:
        dir 桌面
  • mountvol.exe 用來掛上分割區,可在 windows/system32 中找到。步驟為:
    1. 列出各分割:
      mountvol
      • 會列出如:
        \\?\Volume{e2464851-8089-11d2-8803-806d6172696f}\ C:\ …
      • Volumek之後是分割的唯一碼,即 GUID (全域唯一識別元)。
    2. 建好資料夾之後下以下指令,便可將分割掛載成資料夾:
      mountvol 資料夾 \\?\Volume{e2464850-8089-11d2-8803-806d6172696f}\
    3. 解除掛載:
      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 中無效。手作步驟如下:

  1. 建一「目的資料夾」的捷徑。
  2. 將此捷徑改名為「target.lnk」
  3. 建一資料夾,裡面放上面的 target.lnk 。
  4. 將此資料夾屬性改為「唯讀」。
  5. 操作此一資料夾,等同操作目的資料夾。

請參考中文維基百科「符號連結」條目中「文件夾捷徑」段。

符號連結

Vista 以上版本才有符號連結功能,此版本尚未提供符號連結功能。

Windows7及Vista

mklink 指令

建之連結

mklink [[/D] | [/H] | [/J]] link target
  • /D –建之指向目錄的符號鏈接,如果不指定此參數,預設為建立指向檔案的符號鏈接。
  • /H –建立硬鏈接(Hardlink),或稱永久連結。
  • /J –建立NTFS目錄連接點(Junction point)。
  • link –指定符號鏈接的名字
  • target –指定符號鏈接指向的對象的路徑(相對或絕對皆可)。
以Windows7為例:
先到「開始/附屬應用程式/命令提示字元」按右鍵,以「系統管理員身份執行」。
cd "\ProgramsData\Microsoft\Windows\Start Menu\Programs"
mklink /D Copy D:\Programs\Copy

刪除連結

和普通目錄(資料夾)一樣,刪除連結也可以使用rd命令,具體語法如下:
rd directoryname(要被刪除的符號連結的名字)

應用程式 Symlink Creator

應該是透過 mklink ,所以無法用於 XP 。