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