什麼是「無法建立符號連結:檔案存在」錯誤?

什麼是「無法建立符號連結:檔案存在」錯誤?

我正在嘗試在我的主目錄中建立一個指向資料分割區上的目錄和檔案的符號連結。我試過了:

~/Documents$ ln -sv ~/Documents/saga /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc

建立一個在我的資料夾中的目錄saga中命名的符號連結。終端輸出為:Documentshome

ln: failed to create symbolic link ‘/media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc’: File exists

~/Documents我正在檢查ls -a的內容,除了.和之外什麼都沒有..。一般來說,我的home資料夾是空的,它只是一個全新的系統安裝。

答案1

這是一個典型的錯誤......反之亦然:

ln -s Existing-file New-name 

所以在你的情況下

ln -sv /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc ~/Documents/saga 

應該管用。但請注意:

  1. 如果~/Documents/saga存在且不是目錄,也會出現錯誤;

  2. 如果~/Documents/saga存在並且是一個目錄,則符號連結將為~/Documents/saga/saga..doc(您確定雙點嗎?)

  3. 如果~/Documents/saga不存在,則您的符號連結將是~/Documents/saga(原樣,沒有擴展名)。

答案2


重定向時 我有同樣的錯誤訊息

ln -s /usr/bin/nodejs /usr/bin/node

從node.js v0.10.25
到node.js v4.2.3
所以我查看man ln 並使用

[OPTION] 
-f, --force
          remove existing destination files

這正如我所期望的那樣。

答案3

正如@Rmano 在他的中回應的那樣回答參數的順序是錯誤的。我也常犯同樣的錯誤。於是我找到了一個

創建符號連結的萬無一失的方法

首先進入要建立連結的目錄

cd ~/Documents/saga

然後創建連結單一參數

ln -s /very/long/path/to/target/Downloads/saga..doc

這將建立一個與目標同名的當前目錄的連結。

答案4

可能是無關的。
對我來說,這個連結已經失效了。指向不存在的資料夾。當嘗試替換它時,它會失敗並顯示此訊息。 ^ 所以一個簡單的rm linkName就夠了。

相關內容