Pelo que entendi, a maneira usual de adicionar um caminho à PATH
variável de ambiente é concatenando caminhos separados pelo :
caractere.
Por exemplo, se eu quiser adicionar três caminhos a ele /my/path/1
, /my/path/2
e /my/path/3
, eu teria que fazê-lo da seguinte forma:
PATH=$PATH:/my/path/1:/my/path/2:/my/path/3
o que não é fácil de ler.
Existe uma maneira de definir ou adicionar caminhos à PATH
variável usando uma sintaxe de várias linhas ? Talvez usando matrizes? Estou procurando algo parecido com isto:
PATH =
$PATH
/my/path/1
/my/path/2
/my/path/3
Caso existam soluções interessantes específicas do shell, estou procurando uma solução no zsh.
fonte
paste
solução?Não é uma solução interessante, mas muito portátil:
fonte
+=
para evitar a necessidade de reconstruir completamente a sequência.No zsh,
$path
é uma matriz:Nota: ambos
path
são minúsculos.fonte
No zsh, se você estiver adicionando diretórios no final do caminho:
Portably: Como adicionar corretamente um caminho ao PATH?
Você pode usar qualificadores glob para excluir as entradas que não são existentes diretórios ou links simbólicos para tal. Isso pode ou não ser desejável, dependendo se você espera que os diretórios sejam adicionados posteriormente durante a sessão (por exemplo, se estiverem em sistemas de arquivos remotos). Você não pode fazer isso com a
path+=/my/path
sintaxe, porque o lado direito está em um contexto de string e, portanto, não sofre globs; você pode fazer issopath+=(/my/path)
porque cada elemento da matriz é expandido em um contexto de lista.fonte