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 editar

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 editar

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 editar

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 editar

Referências

  1. 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 
  2. 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 
  Este artigo sobre sistema operacional é um esboço. Você pode ajudar a Wikipédia expandindo-o.