欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

Windows 中的硬鏈接、目錄聯接(軟鏈接)、符號鏈接、快捷方式

freeflydom
2024年12月20日 9:37 本文熱度 603

在Linux文件系統中經常提及硬鏈接(Hard Link)和符號鏈接(Symbolic Link),Windows中也可以創建鏈接,但由于豐富的圖形界面操作,很少提及鏈接。Windows 的 NTFS 文件系統支持三種鏈接:硬鏈接(Hard Link)、符號鏈接(Symbolic Link)和目錄鏈接(junction point),此外還有一個大家非常熟悉鏈接機制:快捷方式。

創建鏈接#

創建鏈接可以通過 dos 命令 mklink 或者 powershell 中的New-Item 創建。
mklink命令的使用說明如下圖所示。默認是創建文件符號鏈接,使用/D 參數則是創建目錄的符號鏈接,使用 /H 是創建硬鏈接,使用/J是創建目錄聯結,也稱為軟鏈接(soft link)。

使用 powershell 創建鏈接的方式如下:

New-Item <鏈接路徑> -ItemType <鏈接類型> -Target <鏈接目標>

其中 ItemType 的取值可選:HardLink、SymbolicLink、Junction

幾種鏈接的區別

與 Linux 的文件系統中的 inode 與 block 類似,在 NTFS 文件系統中數據對象也賦予了獨一無二的文件 ID 以及與之對應的文件路徑,文件路徑和文件 ID 對應,文件 ID 和數據對象綁定,最終才呈現為可供用戶打開、編輯的文件。

快捷方式(shortcut)

快捷方式以.lnk文件方式存在,文件大小僅有幾百字節,與原始文件大小無關。適用于 Explorer 等應用程序,并非 NTFS 內置機制,從Win95開始得到支持。FAT32也支持。適用于文件、目錄,只能使用絕對路徑??梢钥绫P符,可以跨主機,可以使用UNC路徑、網絡驅動器。

符號鏈接

符號鏈接是將自己鏈接到一個目標文件或目錄的路徑上。當系統識別到符號鏈接時,它會跳轉到符號鏈接所指向的目標中去,而不改變此時的文件路徑。

符號鏈接從Vista開始得到支持,NTFS內置機制。適用于文件,目錄。可以理解為另一種形式的快捷方式(shortcut),文件大小為0字節和不占用空間??梢允褂孟鄬?絕對路徑,可以跨盤符,跨主機,可以使用UNC路徑和網絡驅動器。

硬鏈接

硬鏈接和符號鏈接的原理完全不同,符號鏈接是指向目標路徑的鏈接,而硬鏈接則是指向目標數據對象的鏈接。因為一個卷中的數據對象都有一個獨一無二文件 ID,也可以說硬鏈接是指向目標文件 ID 的鏈接。

硬鏈接從Windows NT4開始得到支持,是NTFS內置機制,FAT32不支持。只適用于文件,只能使用絕對路徑。本身無文件,不占用額外空間。hardlink與targetfile必須位于同一卷,可以簡單理解成不能跨盤符。

目錄聯接

目錄聯接從Windows2000/XP開始得到支持,是NTFS內置機制。只適用于目錄。只能使用絕對路徑。目錄鏈接通過重分析點實現,目錄鏈接可以跨卷,但是不能跨主機。

詳細對比

幾種鏈接方式詳細比較如下表所示


shortcuthard linkjunction pointsymbolic link
創建方式右鍵 -> 創建快捷方式mklink /H Link Targetmklink /J Link Targetmklink /D Link Target
存在方式以.lnk文件方式存在,適用于Explorer等應用程序。非NTFS內置機制,從Win95開始得到支持。FAT32支持。NTFS內置機制,從Windows NT4開始得到支持。FAT32不支持。NTFS內置機制,從Windows2000/XP開始得到支持。是 NTFS 3.0 及以上文件系統(Windows 2000 及以上系統)的特性,它是鏈接本地目錄(可跨卷)的訪問點,通過交接點的操作都會被系統映射到實際的目錄上。通過建立交接點,可以在保證一個目錄實例(目錄的一致性)的前提下,允許用戶或程序從本地文件系統中的多個位置訪問此目錄。NTFS內置機制,從Vista開始得到支持。文件類型是.SYMLINK
適用范圍同時適用于文件、目錄,只能使用絕對路徑。只適用于文件,只能使用絕對路徑。只適用于目錄。只能使用絕對路徑。即使創建junction point時使用了相對路徑,保存到NTFS中時將隱式轉換成絕對路徑。同時適用于文件、目錄。這是一種超級shortcut,文件大小為0字節和不占用空間。
使用限制可以跨盤符,可以跨主機,可以使用UNC路徑、網絡驅動器。hard link與targetfile必須位于同一volume,可以簡單理解成不能跨盤符。junction point必須與target directory位于同一local computer,可以簡單理解成不能跨主機, 在local computer范圍內,可以跨盤符。不能使用UNC路徑;假設Z是通過網絡映射生成的盤符,同樣不適用于Z。可以使用相對、絕對路徑。假設創建symbolic link時使用了相對路徑,保存到NTFS中的就是相對路徑,不會隱式轉換成絕對路徑??梢钥绫P符,可以跨主機,可以使用UNC路徑、網絡驅動器。
移動能力本身有文件,可以復制,移動等操作。///
文件文件大小僅有幾百字節, 跟原文件大小無關,文件類型是.lnk。本身無文件,為文件創建多入口。由于不同的文件指向的是同樣的數據,所以無論給同一個文件創建多少個硬鏈接,他們占整個卷的數據大小都是一樣的。對交接點內文件和子目錄的“建立、刪除、修改”等操作都被映射到對應的目錄中的文件和子目錄上,對交接點的“復制、粘貼、剪切、配置 ACL”,只會影響此交接點,在同一卷內移動交接點,只會影響此交接點,但在不同卷間移動交接點,會將此交接點轉換為正常目錄,并且交接點對應目錄下的所有內容都會被移動。符號鏈接(Symlink,Softlink)是對文件或目錄的引用,實際上符號鏈接本身是一個“記錄著所引用文件或目錄的絕對或相對路徑”的特殊文件,通過符號鏈接的操作都會被重定向到目標文件或目錄。對符號鏈接和快捷方式的“讀、寫、遍歷”等操作都會被重定向到目標文件或目錄,但對它們的“復制、刪除、移動、配置 ACL”等操作只針對自身。
關聯刪除shortcut,不影響target。在Explorer中刪除hard link,不影響targetfile。刪除target file,不影響hardlink。事實上由于hard link的語義,此時剩下的hardlink就是原始數據的唯一訪問點。只有當一個文件 ID 對應的所有硬鏈接被刪除時,數據才真正被標記為刪除。刪除target directory,junction point仍將存在,但失效了,變得不可用。這個很好理解,因為此時junction point指向不存在的目錄。在Explorer中刪除symboliclink,不影響target。刪除target,symboliclink仍將存在,但失效了,變得不可用。它們可以像普通文件一樣操作,但所有對符號鏈接的操作都實際作用于目標對象。符號鏈接對用戶而言是透明的,符號鏈接看上去和普通的文件和文件夾沒有區別,操作方法也一模一樣(更類似于 Linux 的軟鏈接)。

鏈接的應用

  • 硬鏈接:可以在不復制文件的情況下,實現文件的快速訪問以及文件的備份,還可以防止重要文件誤刪,因為刪除的是文件的鏈接,而非文件數據本身。

  • 符號鏈接:可以把一個路徑映射到另一個路徑,或者指向遠程文件或目錄,甚至可以通過網絡連接到其他計算機上的文件。

  • 目錄聯接:實現路徑重定向,當訪問鏈接目錄時,系統會自動重定向到實際目錄,例如:Vista的"C:\Documents and Settings"是指向"C:\Users"的junctionpoint,這樣一些使用了硬編碼"C:\Documents and Settings"的老程序可以在Vista上正常工作。此外,還可以解決Windows文件路徑長度限制帶來的問題(從 Windows 10 版本 1607 開始,可以通過設置注冊表以及應用程序清單啟用長路徑)。

參考

  1. https://learn.microsoft.com/zh-cn/windows/win32/fileio/hard-links-and-junctions

  2. https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/new-item?view=powershell-7.4

  3. https://learn.microsoft.com/zh-cn/windows/win32/fileio/maximum-file-path-limitation?tabs=registry#enable-long-paths-in-windows-10-version-1607-and-later

  4. https://blog.csdn.net/u010977122/article/details/86523123

作者:czwy

出處:https://www.cnblogs.com/czwy/p/18442267

版權:本作品采用「署名-相同方式共享 4.0 國際」許可協議進行許可。



該文章在 2024/12/20 9:38:16 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2024 ClickSun All Rights Reserved