folder1/folder2
我正在创建一个到in 的符号链接home-folder
。但我不小心这么做了:
ln -s folder1/folder2
而在folder2
而不是 在 中home-folder
。所以我最终意外地创建了一个递归链接。
现在我无法删除此链接:
rm folder1/folder2
给出错误消息'folder1/folder2' Is a directory
。
我害怕去寻找rmdir
或,rm -rf
因为我不确定将尝试删除什么,链接或folder2
。这尤其是一个问题,因为folder1/folder2
这是一个共享文件夹,我不想给服务器上的其他用户带来麻烦。
答案1
当您有一个目录的符号链接时,如果您在名称中添加尾部斜杠,那么您将获得目录本身,而不是符号链接。因此:
rm link/
将尝试删除该目录。您想要的是仅指定不带尾部斜杠的链接名称:
rm link
这应该使您能够删除该链接。
答案2
如果你想删除链接的文件或目录只需使用下面的命令来执行相同的操作
假设来自源文件的链接文件
要软链接文件,请使用以下命令
ln -s /tmp/p1 /var/tmp/
/tmp/p1==>source
/var/tmp/==> Destination path where you want to create soft link
要删除链接文件 p1,请使用以下命令
unlink p1
它将自动删除