我不小心颠倒了我的 ln 的参数并调用了:
ln -s my_link my_dir
Run Code Online (Sandbox Code Playgroud)
其中 my_dir 已经存在而 my_link 不存在。我删除了 my_dir,但无法删除 my_link。
如果我 ls -l my_link 的父目录,我会得到 2 个不同响应中的 1 个,或者:
l????????? ? ? ? ? ? my_link
Run Code Online (Sandbox Code Playgroud)
或者:
lrwxrwxrwx 1 username username 8 Mar 20 16:34 my_link
Run Code Online (Sandbox Code Playgroud)
如果我打电话,rm my_link我会得到:
rm: cannot remove `my_link': Not a directory
Run Code Online (Sandbox Code Playgroud)
而且,我不确定它是否相关,但 my_link 驻留在网络安装的驱动器上。
有谁知道我在这里做了什么,以及如何删除断开的链接?
编辑: 我查看了我的 bash_history 并找到了我运行的命令。看起来我实际上并没有删除 my_dir,它只是不复存在了。我运行了几个版本的错误 ln 命令。
这是我在删除错误之前运行的未经编辑的命令列表:
ln -s test_dir ~/netdrive/test_dir/
ln -s test_dir ~/netdrive/test_dir
ln -s test_dir/ ~/netdrive/test_dir/
Run Code Online (Sandbox Code Playgroud)
您会注意到我已经取消了 my_link 和 my_dir。实际名称都是 test_dir,这可能导致了我的一些困惑(我希望永远不要再犯这个错误)。 …