我即将安装莱宁根这是 Clojure 编程语言的一个有用的 Bash 脚本。
问题是,我不确定将可执行脚本放在 Linux 系统的哪里才合适,以便可以永久稳定地使用。
我认为任何地方都没/home
有意义,但我不知道应该使用哪些目录来实现这一点。
/usr/share
?
答案1
(注:~
翻译如下/home/user
)
就我个人而言,我把所有定制的系统脚本/usr/local/bin
和所有个人 bash 脚本都放在 中~/bin
。我安装的程序很少会将自己放在/usr/local/bin
目录中,因此不会太混乱,而且$PATH
在我的大多数机器上,它已经存在于变量中了。
要添加/usr/local/bin
到系统路径(如果尚不存在),请将其添加到/etc/profile
:
PATH=$PATH:/usr/local/bin
export PATH
要添加~/bin
到您的用户路径,请将其添加到~/.bash_profile
:
PATH=$PATH:$HOME/bin
export PATH
有时默认.bash_profile
文件会有一个 if 语句,如果存在则自动添加~/bin
到,因此请创建并打开一个新终端以查看您的终端是否已经执行此操作。$PATH
~/bin
答案2
/usr/local/ 确实是正确的位置,而 /opt 实际上是用于第三方应用程序的;“/opt 保留用于安装附加应用软件包。”这是文件系统层次结构标准的一部分。
看http://www.pathname.com/fhs/pub/fhs-2.3.html进行/opt 上的讨论。
对于 /usr/local/,它是供“系统管理员使用”的。但不要忘记其中的内容——记录下来。
答案3
过去,您会使用类似 /opt 之类的东西。只要它在 $PATH 中为应该拥有它的用户更新,任何东西都可以(因此 /home 中的任何内容都是坏主意)。
答案4
/usr/local
,我认为“本地”的含义存在一些混淆。
据我了解,“本地”并不意味着“源自本地机器”,而更简单地说是“特定于本地机器”,它可能源自或不源自本地机器。