我知道如何查看和入站符號鏈接如下:
我可以簡單地使用ls -al并且會看到類似的條目
lrwxr-xr-x 1 c 員工 32 Oct 28 11:14 .zshrc -> /Users/c/top/ll/config/zshell.sh
設定鏈接標志的位置,我可以看到連接的真實檔案。
但是,如果我以相同的方式查看真實檔案,則看不到用于創建符號鏈接的檔案:
-rw-r--r-- 1 c 員工 2152 Oct 27 17:52 zshell.sh
uj5u.com熱心網友回復:
最好不要將符號鏈接視為具有兩端的關系,而是將其視為包含檔案路徑的文本檔案,由檔案系統命令自動讀取。因此,檔案系統永遠不知道哪些路徑當前是符號鏈接的目標。事實上,目標可能不存在,或者在不同的檔案系統上。
您能做的最好的事情是在檔案系統(或您認為鏈接可能所在的特定子集)中搜索與特定路徑匹配的任何符號鏈接。作為 Unix“查找”命令的瑞士軍刀為此提供了一個選項:
-lname 模式
檔案是一個符號鏈接,其內容與 shell 模式匹配
pattern。元字符不處理 '/' 或 '.' 特別。如果 -L 選項或 -follow 選項有效,則除非符號鏈接斷開,否則此測驗將回傳 false。
因此,在您的示例中,您可以運行它來搜索整個掛載的檔案系統以查找到給定檔案的鏈接:
find / -lname /Users/c/top/ll/config/zshell.sh
但是請注意,符號鏈接也可以是相對的,因此目標可能取決于符號鏈接的內容和位置。例如,一個鏈接/Users/c/top/的目標可能是“./ll/config/zshell.sh”,并且不會被該模式找到。您可以將模式擴展為“*/zshell.sh”,但隨后必須檢查哪些結果實際決議為您想要的目標。
uj5u.com熱心網友回復:
不,沒有這樣的跟蹤。符號鏈接本質上只是經過特殊處理的小文本檔案;事實上,它們甚至并不總是指存在的真實檔案。
uj5u.com熱心網友回復:
符號鏈接只是指向另一個檔案的指標。
雖然符號鏈接由l目錄串列的第一列中的 清楚地標識
ls -al
他們指向的檔案不會以任何方式被識別。這就是 OS/Shell 的作業方式。
沒有特殊的引數可以讓您ls查看指向您的硬檔案的符號檔案的數量。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/341789.html
