當(dāng)前位置:首頁 > IT技術(shù) > 系統(tǒng)服務(wù) > 正文

如何在Mac上創(chuàng)建和使用符號鏈接?
2021-09-02 21:25:05

符號鏈接,也稱為符號鏈接,是指系統(tǒng)中其他位置的文件或目錄的特殊文件。您可以將它們視為高級別名,下面是如何在MacOS中使用它們。

符號鏈接類似于別名,但它們在Mac上的每個應(yīng)用程序中都有效--包括在終端中。當(dāng)應(yīng)用程序不想使用常規(guī)別名正確工作時,它們特別有用。在MacOS上,使用 ln 效用。您不能在 Finder 中創(chuàng)建它們。MacOS中的符號鏈接與 Linux 中的符號鏈接類似,因為它們都是類似 Unix 的操作系統(tǒng)。Windows 中的符號鏈接的工作方式有點不同。

什么是符號鏈接?

在MacOS中,您可以在Finder中創(chuàng)建常規(guī)別名。別名指向文件或文件夾,但它們更像是簡單的快捷方式。

符號鏈接是一種更高級的別名類型,它適用于系統(tǒng)上的每個應(yīng)用程序,包括終端中的命令行實用程序。您創(chuàng)建的符號鏈接在應(yīng)用程序中似乎與它所指向的原始文件或文件夾相同--盡管它只是一個鏈接。

例如,假設(shè)您有一個程序需要將其文件存儲在/Library/Program中。但是您希望將這些文件存儲在系統(tǒng)上的其他地方-例如,在/卷/Program中。您可以將Program目錄移動到/VILES/Program,然后在/Library/Program中創(chuàng)建一個符號鏈接,指向/卷/Program。程序?qū)L試訪問/Library/Program中的文件夾,而操作系統(tǒng)將將其重定向到/卷/Program。

這對于MacOS操作系統(tǒng)和您使用的應(yīng)用程序來說是完全透明的。如果您瀏覽到Finder或任何其他應(yīng)用程序中的/Library/Program目錄,那么它似乎包含了/volks/Program中的文件。

除了符號鏈接(有時被稱為“軟鏈接”)之外,您還可以創(chuàng)建“硬鏈接”。符號或軟鏈接指向文件系統(tǒng)中的路徑。例如,假設(shè)您有來自/user/示例的符號--或軟鏈接--指向/opt/示例。如果您將文件移動到/opt/示例,那么/user/sample的鏈接就會中斷。但是,如果您創(chuàng)建了一個硬鏈接,它實際上將指向文件系統(tǒng)上的基礎(chǔ)inode。因此,如果您創(chuàng)建了一個指向/opt/例的硬鏈接,并在以后移動了/opt/示例,那么/user/示例中的鏈接仍然指向文件,不管您在哪里移動它。硬鏈接在一個較低的層次起作用。

您通常應(yīng)該使用標(biāo)準(zhǔn)符號鏈接(軟鏈接),如果您不確定使用哪一個。硬鏈接有一些限制。例如,不能在一個分區(qū)或磁盤上創(chuàng)建指向另一個分區(qū)或磁盤上某個位置的硬鏈接,而可以使用標(biāo)準(zhǔn)的符號鏈接來實現(xiàn)這一點。


使用ln命令創(chuàng)建符號鏈接

要在Mac上創(chuàng)建一個符號鏈接,您需要使用終端應(yīng)用程序。

按命令+空格,鍵入“終端”,然后按下“Enter”以打開Spotlight搜索中的終端。導(dǎo)航到Finder>Applications>實用程序>終端,以啟動終端快捷方式。

如何在Mac上創(chuàng)建和使用符號鏈接?_蘋果mac

運行l(wèi)n 命令的形式如下??梢灾付夸浕蛭募穆窂剑?/p>

ln -s /path/to/original /path/to/link

這個-s?這里告訴ln命令創(chuàng)建一個符號鏈接。如果要創(chuàng)建硬鏈接,則忽略-s。大多數(shù)情況下,符號鏈接是更好的選擇,所以不要創(chuàng)建硬鏈接,除非您有特定的理由這樣做。

下面是一個例子。假設(shè)您希望在桌面文件夾中創(chuàng)建指向下載文件夾的符號鏈接。您將運行以下命令:?

ln -s /Users/name/Downloads /Users/name/Desktop

如何在Mac上創(chuàng)建和使用符號鏈接?_蘋果mac_02

創(chuàng)建鏈接后,您將看到您的下載文件夾出現(xiàn)在桌面上。它實際上是您創(chuàng)建的符號鏈接,但它看起來像真正的鏈接。此文件夾將顯示包含與下載文件夾相同的所有文件。這是因為它們是不同的視圖,指向文件系統(tǒng)上相同的底層目錄。

如何在Mac上創(chuàng)建和使用符號鏈接?_蘋果mac_03

如果您的文件路徑包含空格或其他特殊字符,則需要將其括在引號中。因此,如果要在桌面上創(chuàng)建指向用戶目錄中名為“MyFiles”的文件夾的鏈接,則需要以下命令:?

ln -s "/Users/name/My Files" "/Users/name/Desktop/My Link"

為了方便輸入文件和目錄路徑到終端,您可以將文件夾從Finder窗口拖放到終端,終端將自動填充到該文件夾的路徑。如果有必要的話,它也會將路徑用引號括起來。

如何在Mac上創(chuàng)建和使用符號鏈接?_符號鏈接_04

如果需要在用戶帳戶無法訪問的系統(tǒng)位置創(chuàng)建符號鏈接,則需要在ln 命令的sudo 命令,就像這樣:?

sudo ln -s /path/to/original /path/to/link

請記住,在MacOS的現(xiàn)代版本中,由于系統(tǒng)完整性保護功能,您不能在不更改低級固件選項的情況下寫入特定的系統(tǒng)位置。您可以禁用該功能,但我們建議您不要。

如何在Mac上創(chuàng)建和使用符號鏈接?_蘋果mac_05


如何刪除符號鏈接?

您可以刪除符號鏈接,就像刪除任何其他類型的文件一樣。例如,要刪除Finder中的符號鏈接,Ctrl+單擊或右鍵單擊它并選擇“移動到垃圾”。

如何在Mac上創(chuàng)建和使用符號鏈接?_蘋果mac_06

可以使用 rm 命令,該命令與刪除其他文件的命令相同。運行該命令并指定要刪除的鏈接的路徑:?

rm /path/to/link

如何在Mac上創(chuàng)建和使用符號鏈接?_蘋果mac_07


如何使用圖形工具創(chuàng)建符號鏈接?

Finder可以創(chuàng)建別名,但是它們不會像符號鏈接那樣工作。別名就像 Windows 上的桌面快捷鍵。它們不被視為真實、透明的符號鏈接。

為了能夠在Finder中創(chuàng)建符號鏈接,您需要一個第三方實用程序或腳本。我們推薦開源應(yīng)用 SymbolicLinker 快速添加一個Services>Make符號鏈接選項到Finder的上下文菜單。

單擊它添加的選項,它將創(chuàng)建指向當(dāng)前目錄中選定文件或文件夾的符號鏈接。你可以把它重命名,并把它移到任何你喜歡的地方。

如何在Mac上創(chuàng)建和使用符號鏈接?_符號鏈接_08

如果您以前沒有使用過它們,符號鏈接可能需要一些時間來包裝您的頭,并習(xí)慣使用。但是,一旦您這樣做了,您就會發(fā)現(xiàn)它們是一個強大的工具,可以用來執(zhí)行通常使用常規(guī)別名無法完成的任務(wù)。

本文摘自 :https://blog.51cto.com/u

開通會員,享受整站包年服務(wù)立即開通 >