env - executa um programa em um ambiente modificado
SINTAXE
env [OPÇÃO]... [-] [NOME=VALOR]... [COMANDO [ARG]...]
DESCRIÇÃO
Define cada NOME para VALOR no ambiente e executa o COMANDO.
Argumentos obrigatórios para opções longas também são obrigatórios para opções curtas.
-a, --argv0=ARG
passa ARG como o primeiro argumento de COMANDO
-i, --ignore-environment
inicia com um ambiente vazio
-0, --null
termina cada linha de saída com NUL, não com nova linha
-u, --unset=NOME
remove a variável do ambiente
-C, --chdir=DIR
altera o diretório de trabalho para DIR
-S, --split-string=S
processa e divide S em argumentos separados; usado para passar vários argumentos em linhas de shebang
--block-signal[=SIG]
bloqueia a entrega do(s) sinal(is) SIG para o COMANDO
--default-signal[=SIG]
restaura o tratamento do(s) sinal(is) SIG para o padrão
--ignore-signal[=SIG]
define o tratamento do(s) sinal(is) SIG para não fazer nada
--list-signal-handling
lista o tratamento de sinal não padrão para stderr
-v, --debug
imprime informações detalhadas para cada etapa de processamento
--help
exibe esta ajuda e sai
--version
exibe informações da versão e sai
Um simples - implica -i. Se nenhum COMANDO, imprime o ambiente resultante.
SIG pode ser um nome de sinal como 'PIPE' ou um número de sinal como '13'. Sem SIG, todos os sinais conhecidos são incluídos. Vários sinais podem ser separados por vírgula. Um argumento SIG vazio não tem efeito.
Status de saída:
125 se o próprio comando env falhar
126 se o COMANDO for encontrado, mas não puder ser invocado
127 se o COMANDO não puder ser encontrado
- o status de saída do COMANDO, caso contrário
MANUSEIO DE OPÇÕES DE SCRIPT
A opção -S permite especificar vários argumentos em um script. Executar um script chamado 1.pl contendo a seguinte primeira linha:
#!/usr/bin/env -S perl -w -T
...
Executará perl -w -T 1.pl
Sem o parâmetro '-S', o script provavelmente falhará com:
/usr/bin/env: 'perl -w -T': Arquivo ou diretório não encontrado
Consulte a documentação completa para obter mais detalhes.
NOTAS
As páginas exec(3p) do POSIX dizem:
"muitos aplicativos existentes assumem incorretamente que iniciam com certos sinais definidos para a
ação padrão e/ou desbloqueados.... Portanto, é melhor não bloquear ou ignorar sinais
entre execs sem uma razão explícita para fazê-lo, e especialmente não bloquear sinais entre
execs de programas arbitrários (não cooperativos). "
AUTOR
Escrito por Richard Mlynarik, David MacKenzie e Assaf Gordon.
RELATANDO BUGS
Ajuda online do GNU coreutils: [https://www.gnu.org/software/coreutils/] Relate quaisquer bugs de tradução para [https://translationproject.org/team/]
VEJA TAMBÉM
sigaction(2), sigprocmask(2), signal(7)
Documentação completa [https://www.gnu.org/software/coreutils/env] ou disponível localmente via: info '(coreutils) env invocation'
Empacotado pelo Debian (9.7-3) Copyright © 2025 Free Software Foundation, Inc. Licença GPLv3+: GNU GPL versão 3 ou posterior [https://gnu.org/licenses/gpl.html]. Este é um software livre: você pode alterar e redistribuí-lo. NÃO HÁ GARANTIA, na medida permitida pela lei.