set (em português "definir") é um comando presente nos interpretadores de comando de sistemas operacionais do tipo Unix, DOS e Microsoft Windows.
set em sistemas DOS e Microsoft Windows
Em sistemas DOS e Windows o comando set
que permite exibir, definir e remover variáveis de ambiente. O cmd.exe no Windows NT 2000, 4DOS, 4OS2, 4NT e em um número de soluções de terceiros permitem a entrada direta de variáveis de ambiente do prompt de comando. A partir do Windows 2000, o comando set
permite a avaliação de cadeias de caracteres em variáveis, fornecendo assim ao inter alia um meio de realizar aritmética de inteiros.[1]
set em sistemas do tipo Unix
O comando set
em sistemas do tipo Unix POSIX é um comando interno do shell do sistema operacional. Ele pode ser usado para diferentes propósitos como:[2]
- Imprimir os nomes e valores de todas as variáveis do shell de forma ordenada;
- Trocar os parâmetros posicionais;
- Habilitar/desabilitar opções do shell
Diferente do comando set das tecnologias Microsoft e do comando interno do shell do BSD C, o comando set dos sistemas operacionais tipo Unix não define variáveis do shell, o que é feito por meio das atribuições "variável=valor".
Opções do shell
Opções do shell são definições internas que trocam a forma como ele se comporta. Tradicionalmente, as opções do shell são descritas com letras únicas e são habilitadas com o sinal de menos ("-") e desabilitadas com o sinal de mais ("+"). Entretanto, posteriormente, o padrão POSIX adicionou opções de nomes logos e para habilitar essas opções introduziu o sinal -o, bem como o sinal +o para desabilitá-las.
Com exceção de uma, cada opção curta tem sua opção em formato longo correspondente e são descritas na tabela a seguir:
Opção curta
|
Opção longa (forma -o)
|
Descrição
|
-a
|
allexport
|
Exporta todas as variáveis subsequentemente definidas.
|
-b
|
notify
|
Imprime mensagens de término de trabalhos imediatamente, ao invés de esperar pelo próximo prompt. Direcionada para uso interativo.
|
-C
|
noclobber
|
se sobrepõe a essa opção. Direcionada para uso interativo.
|
-e
|
errexit
|
Encerra o shell quando um comando encerra com um estado diferente de zero.
|
-f
|
noglob
|
Desabilita a expansão de coringas.
|
-h
|
|
Localiza e lembra o caminho de comandos chamados dentro de corpos de funções no momento de definição da função, em vez de quando a função é executada (XSI).
|
-m
|
monitor
|
Habilita o controle de trabalhos (habilita por omissão). Direcionada para uso interativo.
|
-n
|
noexec
|
Lê comandos e verifica erros de sintaxe, mas não os executa. Shells interativos têm permissão para ignorar essa opção.
|
-u
|
nounset
|
Trata variáveis indefinidas como erros, não como null.
|
-v
|
verbose
|
Imprime os comandos (conforme escritos) antes de os executar.
|
-x
|
xtrace
|
Imprime os comandos (após expansões) antes de executá-los.
|
|
ignoreeof
|
Desabilita Ctrl-D para encerrar o shell.
|
|
nolog
|
Desabilita histórico de comandos para definições de funções.
|
|
vi
|
Usa a edição de linha-comando no estilo vi. Direcionada para uso interativo.
|
Ligações externas
Referências
- ↑
Karp, David Aaron; Tim O'Reilly; Troy Mott (2005). Windows XP in a nutshell. Col: Nutshell handbook 2 ed. [S.l.]: O'Reilly Media, Inc. p. 422. ISBN 978-0-596-00900-7. Consultado em 26 de novembro de 2010
- ↑
Robbins, Arnold; Beebe, Nelson H.F (2008). «Capítulo 7 - Entrada e Saída, Arquivos e Avaliação de Comandos». Classic Shell Scripting. Col: O'Reilly 1 ed. Porto Alegre: Bookman. pp. 181–183. ISBN 978-85-7780-147-3