哪里是安装自定义bash脚本的好地方?

我即将安装“leiningen”这是clojure编程语言的bash脚本有很多有用的……但我不知道在哪里是适当的 – 在Linux中input可执行脚本系统,使其永久和稳定可用。

我不认为/ home中的任何地方是合理的,但我不知道应该使用哪个目录/目录。

在/ usr /股?

(注: ~在本文中翻译为/home/user

就我个人而言,我将所有定制的系统脚本放在/usr/local/bin以及我所有的个人bash脚本中。 我安装的很less的程序放在/usr/local/bin目录下,所以它不是非常混乱,它已经在大多数机器上的$PATHvariables中。

要将/usr/local/bin添加到系统path(如果它尚未存在),请将其添加到/etc/profile

 PATH=$PATH:/usr/local/bin export PATH 

要将~/bin添加到用户的path,请将其添加到~/.bash_profile

 PATH=$PATH:$HOME/bin export PATH 

有时默认的.bash_profile文件会有一个if语句,如果它存在的话,会自动将~/bin添加到$PATH ,所以创build~/bin并打开一个新的terminal来查看你是否已经这样做了。

/ usr / local /确实是正确的地方,而/ opt是真正的第三方应用程序; “/ opt保留用于安装附加应用程序软件包”。 这是Filesystem Hierarchy Standard的一部分。

有关/ opt的讨论,请参阅http://www.pathname.com/fhs/pub/fhs-2.3.html

对于/ usr / local /,这是“由系统pipe理员使用”。 只是不要忘记那里的东西 – logging它。

从历史上看,你会使用/ opt这样的东西。 任何事情都可以,只要在$ PATH中更新了应该拥有它的用户(因此/ home中的任何内容都是坏主意)。

/usr/share/clojure似乎是把clojure的二进制文件和库放在一起的常见地方 – 为什么我不知道/usr/local/share/clojure似乎是很自然的 – 所以在这个bash脚本下创build一个site子目录看起来不错。

总的来说,通过函数来​​组织脚本更有意义,并不是所有的bash脚本都在同一个地方。