0

错误地我在我的 redhat 办公机器上执行了以下命令,现在我不能再运行ctags -R *了。

ln -s /usr/bin/ctags-exuberant

希望以下信息有所帮助,
[ypp:~]$ ls /usr/bin/ctags-exuberant
[ypp:~]$ ls: /usr/bin/ctags-exuberant: No such file or directory

[ypp:~]$ unlink /usr/bin/ctags-exuberant
unlink: cannot unlink /usr/bin/ctags-exuberant': No such file or directory

[ypp:~]$ which ctags
alias ctags='/usr/bin/ctags'
/usr/bin/ctags

[ypp:~]$ ln -s /usr/bin/ctags-exuberant /usr/bin/ctags
ln: creating symbolic link '/usr/bin/ctags' to '/usr/bin/ctags-exuberant': File exists

[ypp:~]$ ln -s /usr/local/bin/ctags /usr/bin/ctags-exuberant
ln: creating symbolic link ,/usr/bin/ctags-exuberant' to '/usr/local/bin/ctags': Permission denied

到目前为止,我已经尝试过,

[ypp:~]$ rm /usr/bin/ctags-exuberant
/bin/rm: cannot lstat /usr/bin/ctags-exuberant': No such file or directory

[ypp:~]$ rm -i /usr/bin/ctags-exuberant
/bin/rm: cannot lstat /usr/bin/ctags-exuberant': No such file or directory

[ypp:~]$ unlink /usr/bin/ctags
unlink: cannot unlink /usr/bin/ctags': Permission denied

请告诉我如何让我的 ctags 恢复正常,我也没有超级用户权限。

4

1 回答 1

0

根据手册页ln创建一个指向文件TARGET名的链接LINKNAME。如果LINKNAME省略,就像您的情况一样,将在当前目录TARGET中创建一个链接,使用名称作为. 结果,当您执行一个符号链接(有时称为软链接)时,将在您当前指向的工作目录中创建名为.TARGETLINKNAMEln -s /usr/bin/ctags-exuberantctags-exuberant/usr/bin/ctags-exuberant


似乎有比你在这里与我们分享的更多的东西在起作用。简单地在任何目录中创建一个链接ctags-exuberant不应该导致您正在经历的变化。您的 哪里还有其他更改path

如果,不知何故,只是创建链接已经引起了你所有的麻烦,那么你需要专注于找到生成的链接并将其删除。如果您不知道它是在哪个目录中创建的,您可以通过以下方式找到它:

find / -type l -name 'ctags-exuberant' 2>/dev/null

找到后,将其删除,看看是否能解决您的问题。让我们知道你发现了什么。

否则,您最好在https://unix.stackexchange.com/上尝试聪明的头脑

于 2016-05-15T19:27:10.273 回答