如何建立跨 PC 工作的相對符號鏈接

如何建立跨 PC 工作的相對符號鏈接

我有以下目錄結構開始

~/a/bin
~/a/src -> /home/user/b/sync/src

我創建了一個符號鏈接

cd ~/a/src
ln -s ../bin bin-xyz

現在 bin-xyz 是一個損壞的鏈接,並且無法通過 cd 進入它。

我在尋找什麼?

如何在符號連結資料夾內建立符號鏈接,以使相對路徑不會被破壞。例如,

 cd ~/a/src/bin-xyz 

或者

 cd ~/b/sync/src/bin-xyz

如果 ~/a/ 或 ~b/sync/ 中有 bin 目錄,應該可以工作

我為什麼要找這個?

我正在跨電腦同步 ~/b/sync/src,其中 ~/a/ 是我在兩台電腦中的工作區,但電腦的使用者名稱不同。因此,擁有有效的相對路徑對我來說意味著更輕鬆的工作流程。

我正在使用 Bittorent 同步進行同步。

謝謝 :-)

答案1

現在 bin-xyz 是一個損壞的鏈接

原因希望是顯而易見的:要麼..必須參考實際的父目錄,否則它將完全不明確。

因為~/a/src -> /home/user/b/sync/src,我認為$PWDln -s ../bin bin-xyz正在嘗試連結/home/user/b/sync/src/bin-xyz/home/user/a/sync/bin.在這種情況下,您應該只使用絕對路徑:

 ln -s /home/user/a/sync/bin /home/user/b/sync/src/bin-xyz

ln沒有填補這方面空白的原因..是,與您目前的 shell 不同,它沒有追蹤您的移動,也無法知道..您指的是真正的父目錄之外的其他內容。

你的問題(也許?)暗示你不能這樣做,因為實際上涉及兩個不同的系統。這意味著要么安裝了網路共享,要么您對兩者使用相同的區塊設備,這又意味著XY問題——如果沒有更多細節就無法解決這個問題。

相關內容