Mais sobre variáveis de ambiente.
authorThadeu Lima de Souza Cascardo <cascardo@minaslivre.org>
Tue, 25 Mar 2008 13:28:42 +0000 (10:28 -0300)
committerThadeu Lima de Souza Cascardo <cascardo@minaslivre.org>
Tue, 25 Mar 2008 13:28:42 +0000 (10:28 -0300)
environ/shell
environ/variaveis

index 7995116..111f8d8 100644 (file)
@@ -24,3 +24,73 @@ O shell expande o caractere '$' seguido do nome de uma variável por seu
 valor. Assim, o valor de variáveis podem ser usados em comandos do
 shell, permitindo que valores usados com muita frequência possam ser
 abreviados ou facilmente substituídos.
+
+Exemplo
+
+Exibe o valor da variável HOME na saída padrão:
+echo $HOME
+
+Lista os arquivos no diretório, que é o valor da variável HOME:
+ls $HOME
+
+Quem faz a expensão do valor dessa variável é o shell. Portanto,
+comandos externos e internos recebem como parâmetro o valor da variável
+e não o nome da variável.
+
+Para que outros programas façam uso dessas variáveis de ambiente, é
+necessário que o shell as exporte antes de executar tais programas. Para
+fazê-lo, usamos o comando export.
+
+export HOME
+export MYNAME
+
+Note que é o nome da variável que é usado para exportá-la, não seu
+valor. Feito isso, podemos fazer o teste executando um sub-shell, isto
+é, um shell dentro de outro shell.
+
+OTHERNAME="User Name"
+bash
+echo $MYNAME
+echo $OTHERNAME
+exit
+
+Veja que a variável MYNAME, que foi exportada, teve seu valor
+substituído no sub-shell. Já a variável OTHERNAME, não foi substituída
+pelo sub-shell, pois este não conhecia seu valor, já que a variável não
+foi exportada pelo shell.
+
+O bash ainda possui os comandos internos set e unset, que podem ser
+utilizados para visualizar a lista de variáveis de ambiente e remover
+variáveis de ambiente.
+
+set   Lista variáveis de ambiente e funções definidas.
+unset   Remove a variável de ambiente.
+
+Exemplos
+
+Remover a variável de ambiente MYNAME:
+echo $MYNAME
+unset MYNAME
+echo $MYNAME
+
+Listar as variáveis de ambiente e funções:
+set
+
+O comando set lista apenas as variáveis de ambiente, se o bash estiver
+operando em modo POSIX. Para isso, basta definir a variável
+POSIXLY_CORRECT.
+
+POSIXLY_CORRECT=1
+set
+
+Outro comando, env, pode ser usado pra manipular o ambiente. Este
+comando externo pode executar um outro comando com um novo ambiente
+definido ou simplesmente listar o ambiente atual.
+
+Exemplos
+
+Listar variáveis de ambiente:
+env
+
+Executar o comando ls com a variável POSIXLY_CORRECT em seu ambiente:
+env POSIXLY_CORRECT=1 ls / -a
index aefd002..42c8595 100644 (file)
@@ -21,3 +21,5 @@ SHELL   Shell usado pelo usuário.
 TERM    Tipo do terminal utilizado.
 PAGER   Paginador a utilizar, como less ou more.
 EDITOR    Editor a utilizar.
+POSIXLY_CORRECT   Usada por ferramentas GNU para determinar seu
+comportamento segundo o padrão POSIX.