使用bash的多路径环境变量设置行


Answers:


22

你可以做:

export PATH="A"
export PATH="$PATH:B"
export PATH="$PATH:C"

随后的每一行都附加到先前定义的路径上。这通常是一个好习惯,因为它避免浪费现有路径。如果您希望新组件优先,请交换顺序:

export PATH="A"
export PATH="B:$PATH"
export PATH="C:$PATH"

或者,您可以执行以下操作:

export PATH=A:\
B:\ 
C

其中\标记的行继续。尚未测试此方法。


2
请注意,这export是内置命令,而不是关键字或语法分配。因此,如果您的PATH元素包含空格(或全局字符),则确实需要在双引号周围export PATH="$PATH:B"。您还可以编写PATH=$PATH:B等等。您只需要export变量一次,而不是每次都更改(在某些非常旧的Bourne shell中除外),并且在赋值中不需要双引号。
吉尔斯(Gilles)'所以

1
PATH+=:B适用于字符串连接。
Aryeh Leib Taurog

4

您可以在一行的末尾使用反斜杠来扩展bash中的行,如下所示:

export PATH=/path/A:\
/path/B:\
/path/C

请注意,此处缺少空白很重要。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.