看板 MAC 關於我們 聯絡資訊
echo tt > tt1 ln tt1 tt2 ln -s tt1 tt3 以上是命令列下製作 link 及 symbol link 的實驗 我的程度也到這裡而已了 tt1 tt2 會指向同一個檔案,兩個都必需刪除,檔案才會真的刪除 tt3 則是指向 tt1, 應該說,它只是個符號連結,是指向 tt1 這個'檔名' 因此當 tt1 消失時,雖然其本體還在(也就是正被 tt2 指著) 但 tt3 確定是指不到東西,變成無效的 null pointer 了 曾經以為 Finder 下用滑鼠右鍵製作替身 其實只是替不習慣使用命令列的使用者包一層 GUI 骨子裡就是 ln -s 但實測發現不一樣 滑鼠右鍵 給 tt1 製作替身 cat tt1替身 (結果會是一堆亂碼) 有什麼必要另做一種替身呢? 特色或優點是什麼? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.10.54.243 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MAC/M.1606717731.A.CC0.html
andrew43: alias延續自OS9,容許目標被移動過還保持連結,SL不行。 11/30 14:52
SL 是指 symbol link 吧! 原來 Finder 下的替身,叫做 alias 有英文關鍵字就方便了,我再查查 可是你說 SL 不行,我反對;我只要用絕對路徑就好了 ln -s /Users/richard/tt1 tt2 如上,/Users/richard 是我 tt1 當時的絕對路徑 用這樣去產生的 tt2 是可以被移動的 結果 alias 仍然看不出特色.. ※ 編輯: HuangJC (101.10.54.243 臺灣), 11/30/2020 14:56:05
tyf99: 替身會自動朔源,你檔案在同磁區到處搬都行 11/30 14:59
tyf99: 替身也可以自訂圖示,生一個副本出來,用不同圖示顯示 11/30 15:01
tyf99: 所謂搬動,是搬動源頭檔案,alias 會自動找回源頭檔 11/30 15:02
tyf99: symLink是檔案系統層級,較低階;alias是OS層級,功能多 11/30 15:08
HuangJC: 感謝,我馬上來實驗~ 11/30 15:15
ln 就有自動溯源的感覺啊! 剛去複習 inode 概念 如我上面的例子,tt1 tt2 兩個檔名都只是指向同一個 inode 那隨你 tt1 搬去哪,tt2 總是找得到 tt1 啊;其實它是找 inode 啊 倒是因為用 incode 所建的 link 無法跨設備 所以跨設備時,一定要用 SL 又要 SL, 又要能溯源,才用 alias... ※ 編輯: HuangJC (101.10.54.243 臺灣), 11/30/2020 23:11:58
calvinvin: #1EbUvk4r (MAC) 12/01 00:17
calvinvin: 咦發現這篇回文作者就是前幾樓大大XD 12/01 00:21
ck574b027: ln本質上是相同檔案,alias的目標被砍,替身就不能用 12/01 02:51
ck574b027: 比較有溯源的上下從屬關係。 12/01 02:52