1 Alterando variáveis de ambiente no bash
3 O shell do projeto GNU, bash, é um dos mais populares entre sistemas
4 utilizando GNU e Linux, como Debian, Fedora, Mandriva, SuSE, Gentoo,
5 entre outros. Veremos como utilizar as variáveis de ambiente nesse
8 Para definir uma variável no bash, basta executar uma linha como:
11 O nome da variável deve conter apenas caracteres alfa-numéricos e
12 sublinhado, começando por caracteres alfabéticos ou sublinhado. O
13 caractere '=' não pode ser precedido ou seguido de espaços. O valor da
14 variável deve ser escapado com aspas duplas, aspas simples ou o
15 caractere '\' caso contenha caracteres como espaço ou outros caracteres
16 especiais para o shell.
23 O shell expande o caractere '$' seguido do nome de uma variável por seu
24 valor. Assim, o valor de variáveis podem ser usados em comandos do
25 shell, permitindo que valores usados com muita frequência possam ser
26 abreviados ou facilmente substituídos.
30 Exibe o valor da variável HOME na saída padrão:
33 Lista os arquivos no diretório, que é o valor da variável HOME:
36 Quem faz a expensão do valor dessa variável é o shell. Portanto,
37 comandos externos e internos recebem como parâmetro o valor da variável
38 e não o nome da variável.
40 Para que outros programas façam uso dessas variáveis de ambiente, é
41 necessário que o shell as exporte antes de executar tais programas. Para
42 fazê-lo, usamos o comando export.
47 Note que é o nome da variável que é usado para exportá-la, não seu
48 valor. Feito isso, podemos fazer o teste executando um sub-shell, isto
49 é, um shell dentro de outro shell.
57 Veja que a variável MYNAME, que foi exportada, teve seu valor
58 substituído no sub-shell. Já a variável OTHERNAME, não foi substituída
59 pelo sub-shell, pois este não conhecia seu valor, já que a variável não
60 foi exportada pelo shell.
62 O bash ainda possui os comandos internos set e unset, que podem ser
63 utilizados para visualizar a lista de variáveis de ambiente e remover
64 variáveis de ambiente.
66 set Lista variáveis de ambiente e funções definidas.
67 unset Remove a variável de ambiente.
71 Remover a variável de ambiente MYNAME:
76 Listar as variáveis de ambiente e funções:
79 O comando set lista apenas as variáveis de ambiente, se o bash estiver
80 operando em modo POSIX. Para isso, basta definir a variável
86 Outro comando, env, pode ser usado pra manipular o ambiente. Este
87 comando externo pode executar um outro comando com um novo ambiente
88 definido ou simplesmente listar o ambiente atual.
92 Listar variáveis de ambiente:
95 Executar o comando ls com a variável POSIXLY_CORRECT em seu ambiente:
96 env POSIXLY_CORRECT=1 ls / -a