#cmd #windows #softlink #符號連結 #硬連結
如果有使用ubuntu或其他相關的Linux系統,會發現許多安裝的程式或是套件包,都是採用類似Windows「建立捷徑」的方式進行檔案之間的連結,但相關的捷徑方式其實是透過「符號連結(Symbolic Links)」或是 「硬連結(Hard Links)」達成的,Windows也內建有建立連結(Link)相關指令,簡單理解就是可以在不同資料夾中,讀取到同一份資料,由於筆者需要處理大量的遙測影像,常常會有重複下載或是影像管理不易的情況,最近試著採用檔案連結的方式進行影像管理
文章目錄
[Windows教學]連接(Link)的基本概念
在 Windows 中建立連結主要有三種方式:符號連結(Symbolic Links)、硬連結(Hard Links),以及連接點(Junction Points)。每種連結都有其特定的用途和限制。以下是這些連結類型的詳細說明:
1. 符號連結(Symbolic Links)
- 定義:符號連結類似於快捷方式,它指向另一個檔案或目錄。它不僅可以跨越不同的檔案系統,還可以指向網絡位置。
- 創建方法:使用
mklink
命令。這通常需要管理員權限。- 檔案的符號連結:
mklink LinkFile TargetFile
- 目錄的符號連結:
mklink /D LinkDir TargetDir
- 檔案的符號連結:
- 特點:
- 符號連結可以跨磁碟分區(例如C: D:槽可以建立連結)。
- 如果目標檔案或目錄被刪除,符號連結仍然存在,但會指向一個不存在的位置。
mklink LinkToFile.txt OriginalFile.txt
這個指令會創建一個名為 LinkToFile.txt 的符號連結,指向 OriginalFile.txt。
mklink /D LinkToDir OriginalDir
這個指令會創建一個名為 LinkToDir 的符號連結目錄,指向 OriginalDir 目錄。
2. 硬連結(Hard Links)
- 定義:硬連結是指向檔案的另一個名稱。與原始檔案共享相同的實際數據。僅限於檔案,不能用於目錄。
- 創建方法:使用
mklink /H
命令。- 檔案的硬連結:
mklink /H LinkFile TargetFile
- 檔案的硬連結:
- 特點:
- 硬連結不能跨越不同的磁碟分區。
- 當所有硬連結都被刪除時,檔案的實際數據才會被刪除。
mklink /H LinkToFile.txt OriginalFile.txt
這個指令會創建一個名為 LinkToFile.txt 的硬連結,指向 OriginalFile.txt。
3. 連接點(Junction Points)
- 定義:連接點類似於目錄的符號連結,但僅限於本地電腦且只能用於目錄。
- 創建方法:使用
mklink /J
命令。- 目錄的連接點:
mklink /J LinkDir TargetDir
- 目錄的連接點:
- 特點:
- 連接點可以實現目錄之間的透明轉接。
- 不能跨越不同的磁碟分區
mklink /J LinkToDir OriginalDir
這個指令會創建一個名為 LinkToDir 的連接點,指向 OriginalDir 目錄。
4. 搭配For循環批次建立 連接點(Junction Points)
這邊簡單試範一下我透過For循環 將遙測影像進行批次連結的指令
for /d %I in (*S1A*) do mklink /J D:\ASC_烏溪\SLC\%~nxI %~nxI
/d 是當前資料夾 %I 儲存我符合((*S1A*))規則的檔名 mklink /J 創建連結點
D:\ASC_烏溪\SLC\%~nxI 目標資料夾 %~nxI %I的完整檔名(含副檔名) 第二個 %~nxI 當前目錄的檔案夾
透過CMD進行批次處理後成功建立 Junction,並在目標資料夾建立了連結,連結資料夾會有一個箭頭符號
4. 檔案總管創建連結GUI外掛
如果不習慣使用CMD指令的話可以直接跟著以下網頁連接教學安裝檔案總管的GUI擴充外掛