查找文件的符号链接或“~/.bashrc”中的记录

查找文件的符号链接或“~/.bashrc”中的记录

我有一些可以直接从终端运行的命令:

my_command

并且运行良好。但是,我想禁用它以这样的方式运行。我知道它位于哪里:

which my_command

它给出了文件的位置my_command。但是,我如何找出指向它的符号链接在哪里,并让它在不指定完整路径的情况下运行 vai 终端?或者文件中的记录,如~/.bashrc。我还能在哪里寻找它?

my_command我查找了in的链接或记录/usr/bin~/.bashrc 但什么也没找到。但这也可能意味着我找不到它。

答案1

我认为你可能看错了。bash shell 不仅查看/usr/bin整个目录集:

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/braiam/.rvm/bin

您的命令应该位于其中一个目录中,或者具有调用它的函数/别名。对于这些情况,您可能更喜欢type

$ type ls
ls is aliased to `ls --color=auto'
$ type jobs
jobs is a shell builtin
$ type apt-get
apt-get is /usr/bin/apt-get

答案2

除了/usr/bin搜索要运行的命令之外,还有更多目录。完整列表保存在$PATH变量中。要查看其内容,请运行echo $PATH

您的脚本(或其符号链接)应该位于其中一个目录中。

更新:不幸的是,该$PATH变量可以在 shell 提供的任何文件中设置。 开始查找的好地方是/etc/environment、、和。/etc/profile此外,有些人建议在中设置,因此检查那里也可能会有帮助。/etc/bashrc~/.bashrc~/.bash_profile$PATH/etc/X11/xsession.d/90environment

相关内容