Sobrevivência de variáveis editadas manualmente

-1

Eu tenho algumas variáveis ambientais configuradas no meu .profile e, portanto, as variáveis podem ser definidas automaticamente quando eu efetuo login. Em alguns casos especiais, também preciso alterar algumas configurações usando o comando "export", da seguinte forma:

export OMP_NUM_THREADS=3

Quando edito manualmente uma variável de ambiente, executo um software que requer a variável com nohup e, em seguida, efetuo logout. A variável retorna no momento em que eu saio?

    
por Ezekiel Kuo 26.05.2016 / 05:51

1 resposta

0

Para o programa que você iniciou com nohup , não, a variável não será redefinida porque você efetuou logout (a menos que seja um programa que cuida do logout e redefina a variável, ou alguma estranheza).

Cada processo tem sua própria cópia de variáveis de ambiente. Para um processo X, outros processos normalmente não podem alterar a cópia de variáveis de X sem a cooperação de X. É também por isso que um script não pode alterar as variáveis do shell atual, a menos que seja originado .

Assim, quando você inicia o processo, obtém uma cópia de OMP_NUM_THREADS . O que você faz no seu shell (incluindo a configuração de OMP_NUM_THREADS para outro valor, sair, iniciar outro shell, sacrificar para o Cthulhu) não afetará as variáveis de ambiente do X.

    
por muru 26.05.2016 / 06:20