如何让脚本在 OS X 的任何位置运行?

如何让脚本在 OS X 的任何位置运行?

我已将脚本文件夹正确添加到 $PATH。但我仍然无法通过简单地调用脚本从任何地方运行它们。我该如何实现这一点?

例如。如果我的路径中有~/scripts/,并且~/scripts/foo.sh希望能够在任何地方输入foo并执行foo.sh。当我输入时,echo $PATH我会看到我的scripts文件夹正确地包含在我的路径中。我还制作了foo.sh可执行文件,因为如果我cd进入scripts目录并输入,foo.sh它就会正确运行。

我错过了什么?

答案1

如果您输入“ foo.sh”,您很可能会启动您的脚本,因为它的路径现在包含在您的“ $PATH”文件中。

现在 shell 根本就不知道如何将“ foo”映射到“ foo.sh”。

因此,也许您只需要在脚本中添加 .tcshrc / .bashrc 的别名(例如“ alias foo foo.sh”)或实际的文件符号链接(例如“ ln -s foo foo.sh”),就可以了。

答案2

从您的描述来看,它应该可以工作,除了您似乎想要将 foo 别名为 foo.sh 的部分。您是否重新获取了 .profile、.bashrc 或之后对 PATH 进行更改的任何位置?接下来,您可以从 foo foo.sh 添加别名。

相关内容