É difícil responder essa pergunta completa e precisamente, porque o ponto de fazer export
é colocar um par nome / valor ( EDITOR=nano
por exemplo) nas informações herdadas por um processo filho do shell de exportação. / p>
Em geral, você deseja exportar as coisas definidas em .bashrc
: EDITOR
é um ótimo exemplo, porque define sua preferência por editores de texto que os programadores, interfaces de banco de dados e muitos outros programas usam para decidir qual programa executar quando Um desses programas quer que você edite algum texto. Eu uso EDITOR=vi
eu mesmo. Outros exemplos comuns de .bashrc
são ORACLE_HOME
, PATH
, VISUAL
, TERM
e SHELL
. Eu consegui aqueles fazendo man more
, e lendo para a seção de MEIO AMBIENTE.
Agora que escrevi "em geral", devo observar que, além dos valores de ambiente EDITOR
e VISUAL
, muitos são variados e específicos de alguns subsistemas. Fazer qualquer coisa com o notório sistema de banco de dados Oracle requer muitos valores de ambiente extras, muitos deles por superstição. Como o ambiente do shell é um conjunto de pares nome / valor, o ambiente é usado por sistemas individuais de todos os tipos de maneiras diferentes. O servidor web Apache passa muitos valores para CGI-BIN
programas no ambiente.
Meu conselho é exportar o menor número possível de variáveis. Não polua seu ambiente interativo, pois você nunca sabe quando algum programa decidirá usar o valor da sua variável de ambiente secreto. Escreva pequenos scripts de shell que fazem pouco mais do que definir variáveis de ambiente, em seguida, execute o programa que espera essas variáveis.
Se você tiver um grande número de variáveis de ambiente definidas para seu ambiente interativo, ficará surpreso se você tentar executar algo de cron
- crond
não definirá o ambiente corretamente e você não terá nenhuma ideia de porque.