超碰人人人人人,亚洲AV午夜福利精品一区二区,亚洲欧美综合区丁香五月1区,日韩欧美亚洲系列

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

Windows 中的硬鏈接、目錄聯(lián)接(軟鏈接)、符號(hào)鏈接、快捷方式

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

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

創(chuàng)建鏈接#

創(chuàng)建鏈接可以通過(guò) dos 命令 mklink 或者 powershell 中的New-Item 創(chuàng)建。
mklink命令的使用說(shuō)明如下圖所示。默認(rèn)是創(chuàng)建文件符號(hào)鏈接,使用/D 參數(shù)則是創(chuàng)建目錄的符號(hào)鏈接,使用 /H 是創(chuàng)建硬鏈接,使用/J是創(chuàng)建目錄聯(lián)結(jié),也稱為軟鏈接(soft link)。

使用 powershell 創(chuàng)建鏈接的方式如下:

New-Item <鏈接路徑> -ItemType <鏈接類型> -Target <鏈接目標(biāo)>

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

幾種鏈接的區(qū)別

與 Linux 的文件系統(tǒng)中的 inode 與 block 類似,在 NTFS 文件系統(tǒng)中數(shù)據(jù)對(duì)象也賦予了獨(dú)一無(wú)二的文件 ID 以及與之對(duì)應(yīng)的文件路徑,文件路徑和文件 ID 對(duì)應(yīng),文件 ID 和數(shù)據(jù)對(duì)象綁定,最終才呈現(xiàn)為可供用戶打開(kāi)、編輯的文件。

快捷方式(shortcut)

快捷方式以.lnk文件方式存在,文件大小僅有幾百字節(jié),與原始文件大小無(wú)關(guān)。適用于 Explorer 等應(yīng)用程序,并非 NTFS 內(nèi)置機(jī)制,從Win95開(kāi)始得到支持。FAT32也支持。適用于文件、目錄,只能使用絕對(duì)路徑??梢钥绫P符,可以跨主機(jī),可以使用UNC路徑、網(wǎng)絡(luò)驅(qū)動(dòng)器。

符號(hào)鏈接

符號(hào)鏈接是將自己鏈接到一個(gè)目標(biāo)文件或目錄的路徑上。當(dāng)系統(tǒng)識(shí)別到符號(hào)鏈接時(shí),它會(huì)跳轉(zhuǎn)到符號(hào)鏈接所指向的目標(biāo)中去,而不改變此時(shí)的文件路徑。

符號(hào)鏈接從Vista開(kāi)始得到支持,NTFS內(nèi)置機(jī)制。適用于文件,目錄??梢岳斫鉃榱硪环N形式的快捷方式(shortcut),文件大小為0字節(jié)和不占用空間??梢允褂孟鄬?duì)/絕對(duì)路徑,可以跨盤符,跨主機(jī),可以使用UNC路徑和網(wǎng)絡(luò)驅(qū)動(dòng)器。

硬鏈接

硬鏈接和符號(hào)鏈接的原理完全不同,符號(hào)鏈接是指向目標(biāo)路徑的鏈接,而硬鏈接則是指向目標(biāo)數(shù)據(jù)對(duì)象的鏈接。因?yàn)橐粋€(gè)卷中的數(shù)據(jù)對(duì)象都有一個(gè)獨(dú)一無(wú)二文件 ID,也可以說(shuō)硬鏈接是指向目標(biāo)文件 ID 的鏈接。

硬鏈接從Windows NT4開(kāi)始得到支持,是NTFS內(nèi)置機(jī)制,F(xiàn)AT32不支持。只適用于文件,只能使用絕對(duì)路徑。本身無(wú)文件,不占用額外空間。hardlink與targetfile必須位于同一卷,可以簡(jiǎn)單理解成不能跨盤符。

目錄聯(lián)接

目錄聯(lián)接從Windows2000/XP開(kāi)始得到支持,是NTFS內(nèi)置機(jī)制。只適用于目錄。只能使用絕對(duì)路徑。目錄鏈接通過(guò)重分析點(diǎn)實(shí)現(xiàn),目錄鏈接可以跨卷,但是不能跨主機(jī)。

詳細(xì)對(duì)比

幾種鏈接方式詳細(xì)比較如下表所示


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

鏈接的應(yīng)用

  • 硬鏈接:可以在不復(fù)制文件的情況下,實(shí)現(xiàn)文件的快速訪問(wèn)以及文件的備份,還可以防止重要文件誤刪,因?yàn)閯h除的是文件的鏈接,而非文件數(shù)據(jù)本身。

  • 符號(hào)鏈接:可以把一個(gè)路徑映射到另一個(gè)路徑,或者指向遠(yuǎn)程文件或目錄,甚至可以通過(guò)網(wǎng)絡(luò)連接到其他計(jì)算機(jī)上的文件。

  • 目錄聯(lián)接:實(shí)現(xiàn)路徑重定向,當(dāng)訪問(wèn)鏈接目錄時(shí),系統(tǒng)會(huì)自動(dòng)重定向到實(shí)際目錄,例如:Vista的"C:\Documents and Settings"是指向"C:\Users"的junctionpoint,這樣一些使用了硬編碼"C:\Documents and Settings"的老程序可以在Vista上正常工作。此外,還可以解決Windows文件路徑長(zhǎng)度限制帶來(lái)的問(wèn)題(從 Windows 10 版本 1607 開(kāi)始,可以通過(guò)設(shè)置注冊(cè)表以及應(yīng)用程序清單啟用長(zhǎng)路徑)。

參考

  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

版權(quán):本作品采用「署名-相同方式共享 4.0 國(guó)際」許可協(xié)議進(jìn)行許可。



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