我在应用程序文件夹中有一些 bash 脚本,我想像它们在我的路径上一样使用它们。如果它们是直接的应用程序,我只需将目录添加到 ~/.bashrc,但这些都是脚本。
例如:
~/a_dir/another_dir/foo.sh
~/a_dir/another_dir/foo-gui.sh
是否有一个好的方法来设置路径,以便我可以从任何目录中使用它们?
例如:
totally/different/path$ bash foo.sh
答案1
是的,您可以将任何目录添加到系统路径。一种方法是更新 PATH(环境变量)定义。您可以.bashrc
通过添加以下行来执行此操作:
PATH="/your/script/dir:${PATH}"
export PATH
我喜欢将我的脚本添加到$HOME/.local/bin/
(一个隐藏目录)中,这样我的主目录就会保持更干净。
除非您运行,否则您的目录不会立即插入到 PATH 变量中source .bashrc
。
请记住,您可以将多个目录添加到路径中。如果您不理解代码,请查阅 BASH 文档。
上述方法仅适用于您的用户。如果您需要为所有用户添加脚本目录,请执行以下操作菩提禅并将您的脚本添加到/usr/local/bin
。
答案2
我认为最好的方法是将脚本添加到 ~/bin
mkdir ~/bin
~/bin
应该会自动添加到您的路径中。如果没有,请将其添加到~/.bashrc
if [ -d $HOME/bin ]; then
PATH=$PATH:$HOME/bin
fi
如果您希望所有用户都可以使用它们,请将它们添加到/usr/local/bin
答案3
另一种解决方案
~/.bashrc
添加使用 vim 打开的路径$ vim ~/.bashrc
例子:
# add extra paths export PATH=$PATH:~/Scripts
添加路径后运行:
$ source ~/.bashrc
如果添加正确则应该不会有错误。