Bash - redirecionar a saída padrão e o erro padrão para o mesmo arquivo
- 2558
- 127
- Enrique Crist
O Bash Shell é o shell mais popular nos sistemas Linux e, para usar a concha com eficiência, você precisa de um pouco de conhecimento sobre redirecionamentos de casca de batida. Este também é um passo essencial para aprender scripts de bash.
Neste guia, mostraremos como redirecionar a saída padrão e o erro padrão para o mesmo arquivo na linha de comando Bash Shell. Isso incluirá vários exemplos para que você possa escolher o método certo em qualquer cenário.
Neste tutorial, você aprenderá:
- Como redirecionar a saída padrão e erro padrão para o mesmo arquivo
- Como redirecionar a saída padrão e erro padrão para arquivar e terminal
- Como redirecionar a saída padrão e erro padrão para /dev /null
Categoria | Requisitos, convenções ou versão de software usada |
---|---|
Sistema | Qualquer distro Linux |
Programas | Bash Shell |
Outro | Acesso privilegiado ao seu sistema Linux como raiz ou através do sudo comando. |
Convenções | # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando$ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular |
Redirecionar a saída padrão e o erro padrão
Vamos primeiro cobrir como redirecionar a saída padrão para um arquivo. Se você já tem esses princípios básicos, fique à vontade para pular para os comandos de exemplo.
Você normalmente usa >
para redirecionamento e anexar a um arquivo existente, você usaria >>
.
$ echo "linuxconfig.org "> filtro novo.txt e $ echo "linuxconfig.org ">> filtro existente.TXT
Com esses comandos, a saída padrão seria redirecionada para o arquivo e o erro padrão é mostrado na sua tela. Caso você seja novo no Linux, a "saída padrão" é apenas a saída usual e esperada da execução de um comando ou script, e "erro padrão" é qualquer mensagem de erro que ocorra.
Para redirecionar o erro padrão, podemos usar 2>
. Isso fará com que a saída padrão apareça em nossa tela e envie todas as mensagens de erro para um arquivo.
$ echo "linuxconfig.org "2> filtro novo.TXT
Com o básico fora do caminho, agora abordaremos vários exemplos de comando para redirecionar a saída padrão e erro padrão para o mesmo arquivo.
- Para redirecionar a saída padrão e o erro padrão para o mesmo arquivo, use a seguinte sintaxe de comando. Especificamente, anexar
2> & 1
até o final do seu comando usual.$ echo "linuxconfig.org "> filtro novo.txt 2> & 1
- Uma maneira um pouco mais fácil de alcançar essa funcionalidade é com o
&>
operador. Observe que isso funciona bem em Bash e Zsh, mas não em outras conchas; portanto, use o exemplo anterior para obter a máxima compatibilidade com outros sistemas.$ echo "linuxconfig.org "&> filtro novo.TXT
- Para anexar a saída padrão e o erro padrão a um arquivo que já existe, use a mesma sintaxe acima, mas com o
>>
operador de redirecionamento.$ echo "linuxconfig.org ">> filtro existente.txt 2> & 1
- Para suprimir a saída padrão e o erro padrão do seu terminal e evitar gerar um arquivo também, você pode redirecionar os dois para
/dev/null
.$ echo "linuxconfig.org "> /dev /null 2> & 1
- Para redirecionar a saída padrão para um arquivo e redirecionar o erro padrão para um arquivo diferente, use a seguinte sintaxe.
$ echo "linuxconfig.org "2> std-err.txt 1> std-out.TXT
- Se você deseja redirecionar a saída padrão e o erro padrão para o mesmo arquivo, ao mesmo tempo em que os veem no seu terminal, podemos obter uma pequena ajuda do
Tee
comando.$ echo "linuxconfig.org "2> & 1 | tee novo arquivo.TXT
- Se você deseja ver a saída padrão e o erro padrão na sua tela, enquanto Anexando eles para o mesmo arquivo, podemos usar o
-a
(Apênder) opção comTee
.$ echo "linuxconfig.org "2> & 1 | tee -aquário existente.TXT
Pensamentos finais
Neste guia, vimos como redirecionar a saída padrão e o erro padrão para o mesmo arquivo em bash. Isso incluiu vários operadores de bash diferentes, dependendo se queremos criar um novo arquivo ou anexar a um arquivo existente. Também aprendemos a usar o Tee
comando para ver saída padrão e erro padrão em nosso terminal, além de escrever -os em um arquivo. Agora você é um especialista em redirecionar a saída padrão e o erro padrão para um arquivo em Bash, e está muito mais próximo de dominar o shell inteiramente.
Tutoriais do Linux relacionados:
- Uma introdução à automação, ferramentas e técnicas do Linux
- Coisas para instalar no Ubuntu 20.04
- Mastering Bash Script Loops
- Loops aninhados em scripts de basquete
- Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
- Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
- Ubuntu 20.04 Guia
- Como fazer bota dupla kali linux e windows 10
- Coisas para instalar no Ubuntu 22.04
- Tutorial de depuração do GDB para iniciantes