如何将目录添加到$ PATH变量中,以便我可以在bash中运行脚本而无需键入整个文件路径?

时间:2015-07-25 18:24:47

标签: bash scripting path terminal

我想仅使用文件名和扩展名从命令行运行bash脚本“hello.sh”。我通过编辑.bash_profile文件将此文件所在的目录(“/ Users / myusername / dev”)添加到$ PATH变量中。但是,当我尝试运行脚本时,我得到“找不到命令”。我正在研究MacOSX。

这是我的$ PATH变量,已从终端应用验证: “/Users/myusername/dev:/Library/Frameworks/Python.framework/Versions/3.4/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin”

如果我将脚本移动到/ usr / local / bin文件夹中,也在我的$ PATH中,可以直接输入脚本来运行脚本。我有一个想法是,我可能需要为目录设置一些用户权限?否则,我没有在$ PATH中正确设置路径吗?

1 个答案:

答案 0 :(得分:1)

两种可能性:

  • 权限似乎不太可能成为问题,但您必须同时拥有 / Users / myusername / dev 目录的读取权限和执行权限(以及它的父母等。)。
  • 对于login-shells读取
  • .bash_profile。您可能忽略了采购文件,例如. ~/.bash_profile或退出/进入。

要检查拼写错误,我使用的脚本以可读的形式显示我的路径(请参阅link)。