Bash não está lendo env?

0

O contexto para isso é que eu quero ler o caminho do usuário do xmonad, onde o caminho é modificado por qualquer coisa que esteja em sua .bashrc, se aplicável.

Aqui está o que eu acho estranho: se eu tiver xmonad execute bash -cl "env && echo $PATH" , ele retornará um env que inclui um $PATH que não corresponde ao retornado pelo eco. (Eu quero o primeiro.)

O que dá?

E existe uma maneira de corrigir isso, além de analisar a env output?

    
por Ben Kraft 20.08.2011 / 05:32

1 resposta

2

O shell está substituindo o valor de $ PATH primeiro, por causa das aspas duplas. Eu não tenho certeza do que o primeiro conjunto de aspas duplas está fazendo, mas tente um dos

'bash -cl "env && echo $PATH"'
"bash -cl 'env && echo $PATH'"

Agora, você está tentando extrair apenas o caminho da saída env? Em caso afirmativo, echo não é a ferramenta. Você deseja env | grep ^PATH=

    
por 20.08.2011 / 16:51