我正在尝试建立一个项目,从git Storm :
https://github.com/nathanmarz/storm/wiki/Setting-up-development-environment
我的问题是:PATH是什么意思?他们到底要我做什么?
有时我看到一些/bin/path,$ PATH或echo PATH。
有人可以解释PATH的概念吗,这样我以后就可以轻松地设置所有内容,而不必盲目地按照说明进行操作?
最佳答案
PATH是UNIX(和类似UNIX的系统,例如GNU/Linux)系统中的特殊环境变量,shell经常使用和操纵它(尽管其他东西也可以使用它)。
on wikipedia有点简洁,但是基本上它是用来定义在哪里搜索可执行文件(无论是二进制文件,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 shell 外,几乎可以将其缩短为:
: $; export PATH="$PATH:$PWD/bin"
(我不会费心解释CSH兼容的 shell 程序(因为:我同意您使用don't use them的其他建议),但是如果由于某种原因碰巧是您选择的环境,也可以在其中进行类似的操作。 )
但是,大概想将其保存到特定于 shell 的配置文件中(可以是
~/.profile
,~/.bashrc
,~/.zshrc
...,具体取决于您的 shell ),而无需引用$PWD
,而是扩展到的内容。您可能会完成此操作的一种方法是执行以下操作:: $; echo "export PATH=\"\$PATH:$PWD/bin\""
然后将结果行复制/粘贴到适当的配置文件中。
当然,您还可以通过其他方式生成适当的命令,尤其是如果您的
$PWD
当前不在该bin
目录所在的位置。也可以看看:
$PATH
(及更多)关于linux - 在Mac(UNIX)系统上,PATH是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18409707/