我有一个指向一个重要目录的符号链接。我想去掉这个符号链接,同时保留它后面的目录。
我试过rm
,得到的结果是rm: cannot remove 'foo'
。
我试过rmdir
,得到的结果是rmdir: 未能删除'foo'。目录不是空的
。
然后我通过rm -f
、rm -rf
和sudo rm -rf
进行操作。
然后我去找我的备份。
有什么方法可以摆脱符号链接,而不把婴儿和洗澡水一起扔掉?
使用"unlink"命令,并确保***不要在末尾有/。
$ unlink mySymLink
unlink()将一个名字从文件系统中删除。**如果该名称是一个文件的最后一个链接,并且没有进程打开该文件,则该文件被删除,其使用的空间可重新使用。 如果这个名字是一个文件的最后一个链接,但是任何进程仍然打开着这个文件,那么这个文件将继续存在,直到最后一个指向它的文件描述符被关闭。
我认为这可能是有问题的,如果我没有看错的话。
如果这个名字指的是一个符号链接,那么这个链接就会被删除。
如果该名称指的是一个套接字、fifo或设备,那么它的名称就会被删除,但打开该对象的进程可以继续使用它。