A “exportação” é útil apenas para efeitos temporários?

3

Eu sei disso As variáveis do shell não estão disponíveis para os shells pai ou filho e os ambientes Shell estão disponíveis para shells filho.

Quando quero adicionar permanentemente o diretório atual ao PATH, posso fazê-lo de duas maneiras:

Modo 1-normal:

 [sinoosh@localhost ~]$ vi ~/.bash_profile 

2-sem comando de exportação

E, em seguida, logout eu vejo o mesmo resultado que o caminho normal

não há diferenças entre "1" e "2". podemos dizer que o comando export é útil para o tempo que não queremos adicionar permanentemente às variáveis de ambiente?

O que está acontecendo aqui?

    
por Sinoosh 25.09.2016 / 14:02

1 resposta

6

A declaração export (ou declare -x ) faz a diferença entre uma variável shell e uma variável de ambiente .

Como PATH quase certamente já faz parte do seu ambiente - tendo sido definido em /etc/environment , por exemplo - marcá-lo para exportação uma segunda vez não é estritamente necessário [1] (embora não faz mal - e torna a intenção clara).

1 pelo menos eu acho que é o caso - eu gostaria de encontrar uma referência primária

    
por steeldriver 25.09.2016 / 14:41