执行 "ln -s /usr/bin/ctags-exuberant" 后无法 运行 ctags
Cannot run ctags after executing "ln -s /usr/bin/ctags-exuberant"
我在我的 redhat office 机器上错误地执行了以下命令,现在我不能 运行 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 恢复正常工作,
我也没有超级用户权限。
根据 manpage,ln
创建一个 link 文件 TARGET
,名称为 LINKNAME
。如果 LINKNAME
被省略,就像你的情况一样,在 当前目录 中创建一个 link 到 TARGET
,使用名称 [=12] =] 作为 LINKNAME
。因此,当您执行 ln -s /usr/bin/ctags-exuberant
时,一个名为 ctags-exuberant
的符号 link(有时称为软 link)将在指向 /usr/bin/ctags-exuberant
.
您在这里与我们分享的内容似乎更多。简单地在任何目录中创建 link 到 ctags-exuberant
应该不会导致您遇到的更改。您的 path
?
有哪些其他更改?
如果只是创建 link 就给您带来了所有麻烦,那么您需要集中精力找到生成的 link 并将其删除。如果您不知道它是在哪个目录下创建的,您可以通过以下方式找到它:
find / -type l -name 'ctags-exuberant' 2>/dev/null
找到后,将其删除,看看是否能解决您的问题。让我们知道您发现了什么。
试一试聪明的头脑
我在我的 redhat office 机器上错误地执行了以下命令,现在我不能 运行 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 恢复正常工作, 我也没有超级用户权限。
根据 manpage,ln
创建一个 link 文件 TARGET
,名称为 LINKNAME
。如果 LINKNAME
被省略,就像你的情况一样,在 当前目录 中创建一个 link 到 TARGET
,使用名称 [=12] =] 作为 LINKNAME
。因此,当您执行 ln -s /usr/bin/ctags-exuberant
时,一个名为 ctags-exuberant
的符号 link(有时称为软 link)将在指向 /usr/bin/ctags-exuberant
.
您在这里与我们分享的内容似乎更多。简单地在任何目录中创建 link 到 ctags-exuberant
应该不会导致您遇到的更改。您的 path
?
如果只是创建 link 就给您带来了所有麻烦,那么您需要集中精力找到生成的 link 并将其删除。如果您不知道它是在哪个目录下创建的,您可以通过以下方式找到它:
find / -type l -name 'ctags-exuberant' 2>/dev/null
找到后,将其删除,看看是否能解决您的问题。让我们知道您发现了什么。
试一试聪明的头脑