在 Linux 中怎樣移除(刪除)符號連結

2019-09-24 17:07:00

你可能有時需要在 Linux 上建立或者刪除符號連結。如果有,你知道該怎樣做嗎?之前你做過嗎?你踩坑沒有?如果你踩過坑,那沒什麼問題。如果還沒有,別擔心,我們將在這裡幫助你。

使用 rmunlink 命令就能完成移除(刪除)符號連結的操作。

什麼是符號連結?

符號連結(symlink)又稱軟連結,它是一種特殊的檔案型別,在 Linux 中該檔案指向另一個檔案或者目錄。它類似於 Windows 中的快捷方式。它能在相同或者不同的檔案系統或分割區中指向一個檔案或著目錄。

符號連結通常用來連結庫檔案。它也可用於連結紀錄檔檔案和掛載的 NFS(網路檔案系統)上的資料夾。

什麼是 rm 命令?

rm 命令 被用來移除檔案和目錄。它非常危險,你每次使用 rm 命令的時候要非常小心。

什麼是 unlink 命令?

unlink 命令被用來移除特殊的檔案。它被作為 GNU Gorutils 的一部分安裝了。

1) 使用 rm 命令怎樣移除符號連結檔案

rm 命令是在 Linux 中使用最頻繁的命令,它允許我們像下列描述那樣去移除符號連結。

# rm symlinkfile

始終將 rm 命令與 -i 一起使用以了解正在執行的操作。

# rm -i symlinkfile1rm: remove symbolic link ‘symlinkfile1’? y

它允許我們一次移除多個符號連結:

# rm -i symlinkfile2 symlinkfile3rm: remove symbolic link ‘symlinkfile2’? yrm: remove symbolic link ‘symlinkfile3’? y

1a) 使用 rm 命令怎樣移除符號連結目錄

這像移除符號連結檔案那樣。使用下列命令移除符號連結目錄。

# rm -i symlinkdirrm: remove symbolic link ‘symlinkdir’? y

使用下列命令移除多個符號連結目錄。

# rm -i symlinkdir1 symlinkdir2rm: remove symbolic link ‘symlinkdir1’? yrm: remove symbolic link ‘symlinkdir2’? y

如果你在結尾增加 /,這個符號連結目錄將不會被刪除。如果你加了,你將得到一個錯誤。

# rm -i symlinkdir/rm: cannot remove ‘symlinkdir/’: Is a directory

你可以增加 -r 去處理上述問題。但如果你增加這個引數,它將會刪除目標目錄下的內容,並且它不會刪除這個符號連結檔案。(LCTT 譯註:這可能不是你的原意。)

# rm -ri symlinkdir/rm: descend into directory ‘symlinkdir/’? yrm: remove regular file ‘symlinkdir/file4.txt’? yrm: remove directory ‘symlinkdir/’? yrm: cannot remove ‘symlinkdir/’: Not a directory

2) 使用 unlink 命令怎樣移除符號連結

unlink 命令刪除指定檔案。它一次僅接受一個檔案。

刪除符號連結檔案:

# unlink symlinkfile

刪除符號連結目錄:

# unlink symlinkdir2

如果你在結尾增加 /,你不能使用 unlink 命令刪除符號連結目錄。

# unlink symlinkdir3/unlink: cannot unlink ‘symlinkdir3/’: Not a directory