我对Linux中的这个$ PATH几个问题。
我知道它告诉哪些目录查找可执行文件,所以外壳:
- 这是什么意思一个环境变量?
- 如何改变其路径? 并推荐给改了吗?
- 如果我改变它会带来什么后果?
我对Linux中的这个$ PATH几个问题。
我知道它告诉哪些目录查找可执行文件,所以外壳:
为了让您的路径当前$PATH
变量类型:
echo $PATH
它告诉你的shell在哪里寻找二进制文件。
是的,你可以改变它-例如添加到$PATH
文件夹与您的自定义脚本。
所以:如果您的脚本是/usr/local/myscripts
执行它们,你将不得不输入一个完整路径的脚本: /usr/local/myscripts/myscript.sh
更改后$PATH
变量,你可以只需键入myscript.sh
执行脚本。
下面是一个例子$PATH
从RHEL:
在/ usr / Kerberos的/ bin中:在/ usr / local / bin目录:/ bin中:在/ usr / bin中:/ home / user中/箱
要改变你的$PATH
,你必须要么编辑~/.profile
(或~/.bash_profile
)为用户或全局$PATH
中设置/etc/profile
。
一个具有不准确的后果$PATH
变量是外壳将无法找到并没有完全执行程序$PATH
。
首先,你在你的什么$ PATH不正确的说法。 如果你以某种方式打破它(按你的第三点),您必须手动输入在/ usr / bin中/ XYZ,如果你想运行在从终端的/ usr / bin中的程序。 根据各个程序是如何工作的,这可能会打破一些程序,调用其他的人,因为他们将希望只能够运行ls什么的。
所以,如果你是玩弄$ PATH,我会建议先地方保存。 使用命令行指令
echo $PATH > someRandomFile.txt
将其保存在someRandomFile.txt
您可以使用export命令改变$ PATH。 所以
export PATH=someNewPath
但是,这将完全取代someNewPath $ PATH。 “:”由于路项目是由分开的,你可以通过执行项目添加到它(最好不要删除,见上文)
export PATH=$PATH:newPath
这是一个环境变量,这意味着程序可以找到它的价值,即它的东西是设置有关程序运行的环境。其他环境变量包括像当前目录和当前代理的地址。
这很简单,我喜欢这种方式。
打开linux的bash shell,然后打印环境变量:
printenv
我“复制PATH
”变量到文本编辑器和编辑,因为我想要的。 然后更新PATH
这样
export PATH= /variable dir list/
有用。
或者,如果你想添加一个单变量使用此命令。
export PATH = $PATH:/variable_dir_path/
这将扩展使用新的目录路径的路径。