在Mac(UNIX)系统上,PATH是什么?
我正在尝试建立一个项目,从git风暴:https :
//github.com/nathanmarz/storm/wiki/Setting-up-development-
environment
下载Storm发行版,解压缩,然后将解压后的bin /目录放在PATH中
我的问题是:PATH是什么意思?他们到底要我做什么?
有时我会看到一些/ bin / path,$ PATH或echo PATH。
有人可以解释PATH的概念吗,这样我以后就可以轻松地设置所有内容,而不必盲目地遵循说明?
回答:
PATH是UNIX(和类似UNIX,例如GNU / Linux)系统中的一种特殊环境变量,shell经常使用和操纵它(尽管其他事物也可以使用它)。
维基百科上有一个简短的解释,但基本上,它是用来定义在哪里搜索可执行文件的(无论是二进制文件,shell脚本等)。
您可以使用简单的shell命令找出当前PATH设置为什么:
: $; echo $PATH
(注意:: $;
用来表示您的shell提示符;对于您来说可能是完全不同的;只要知道您的提示符是什么,那就是我用该字符串表示的含义。)
根据您的系统和先前的配置,该值会有所不同,但是输出的一个非常简单的示例可能是:
/usr/bin:/bin:/usr/local/bin
这是一个用冒号(:
)分隔的目录列表,可在其中搜索可执行文件(例如ls
,等等)。简而言之,当您尝试从Shell(或以某些方式从其他程序中)执行命令时,
,它将按顺序搜索该列表中的每个目录,以查找您提供的名称的可执行文件,然后运行找到的第一个文件。根据您的问题,这就是概念。
在这里,本文档告诉您要做的就是将解压缩软件的目录(尤其是其bin
子目录)添加到$PATH
变量中。如何执行此操作取决于您使用的是哪个shell,但是对于大多数(与Bourne兼容)的shell,如果您位于该目录所在的目录中,则应该能够执行以下操作bin
:
: $; PATH="$PATH:$PWD/bin"; export PATH
除了实际的Bourne壳外,几乎可以将其缩短为:
: $; export PATH="$PATH:$PWD/bin"
(我不会费心解释与CSH兼容的shell(因为:我同意您不使用它们的其他建议),但是如果碰巧是您选择的环境,也可以在其中进行类似的操作由于某些原因。)
据推测,不过,你会想这个保存到一个shell特定的配置文件(可能是~/.profile
,~/.bashrc
,~/.zshrc
…这取决于你的shell),并没有提及$PWD
,而是不管它扩大到。您可能会完成此操作的一种方法是执行以下操作:
: $; echo "export PATH=\"\$PATH:$PWD/bin\""
然后将结果行复制/粘贴到适当的配置文件中。
当然,您还可以通过其他方式生成适当的命令,尤其是当您$PWD
当前不在该bin
目录所在的位置时。
也可以看看:
- 关于
$PATH
(以及更多)的文章 - superuser.com上的一个相关问题
以上是 在Mac(UNIX)系统上,PATH是什么? 的全部内容, 来源链接: utcz.com/qa/425887.html