0Pricing
Linux Command Line & Bash Scripting Mastery · Aula

Redirecionamento de entrada e saída (>, >>, <)

Domine o redirecionamento da saída de comandos para arquivos e o uso de arquivos como entrada para comandos, tornando os scripts mais flexíveis.

Redirecionamento de entrada e saída (>, >>, <) é uma aula grátis de Linux Command Line & Bash Scripting Mastery no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Linux Command Line & Bash Scripting Mastery, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Linux Command Line & Bash Scripting Mastery inclui 4 aulas no total.

O que é o redirecionamento de E/S?

No Linux, os comandos geralmente produzem uma saída ou exigem uma entrada. O redirecionamento de entrada/saída (E/S) permite alterar de onde um comando obtém sua entrada ou para onde envia sua saída.

Em vez de apenas ver a saída na tela (o terminal), você pode salvá-la em um arquivo ou até mesmo enviar diretamente o conteúdo de um arquivo para outro comando.

Entendendo os fluxos padrão

Todo comando do Linux interage com três fluxos de dados "padrão":

  • Entrada padrão (STDIN): Onde um comando espera receber a entrada (geralmente do teclado).
  • Saída padrão (STDOUT): Onde um comando envia sua saída normal (geralmente para a tela).
  • Erro padrão (STDERR): Onde um comando envia mensagens de erro (também geralmente para a tela).

O redirecionamento permite alterar esses destinos ou fontes padrão.

Capturando a saída com '>'

O operador > é usado para redirecionar a saída padrão (STDOUT) de um comando para um arquivo. Em vez de exibir o resultado na tela, a saída do comando será gravada no arquivo especificado.

Importante: Se o arquivo já existir, > substituirá todo o seu conteúdo pela nova saída. Tenha cuidado para não apagar dados importantes acidentalmente!

Exemplo: salvando a saída de um comando

Vamos salvar a saída do comando ls -l em um arquivo chamado my_files.txt. Depois, veremos o conteúdo do arquivo usando cat.

ls -l > my_files.txt
cat my_files.txt

Adicionando conteúdo a um arquivo com '>>'

Às vezes, você não quer substituir um arquivo; quer adicionar novo conteúdo ao final dele. É para isso que serve o operador >>!

>> redireciona a saída padrão (STDOUT) para um arquivo, mas, se o arquivo já existir, acrescentará a nova saída ao final dele, preservando o conteúdo existente.

Exemplo: acrescentando conteúdo a um registro

Primeiro, crie um arquivo simples. Depois, use >> para adicionar outra linha a ele. Observe como o conteúdo original é mantido.

echo "First line of log." > app_log.txt
echo "Second line added." >> app_log.txt
cat app_log.txt

Lidando com erros usando '2>'

E quanto às mensagens de erro? Elas vão para o erro padrão (STDERR). Para redirecionar o STDERR para um arquivo, usamos o descritor de arquivo 2 seguido do operador >: 2>.

Isso é extremamente útil para registrar erros sem poluir sua saída principal ou para depurar scripts.

Exemplo: registrando mensagens de erro

Vamos tentar listar um diretório que não existe. Normalmente, a mensagem de erro aparecerá na tela. Em vez disso, vamos redirecioná-la para errors.log.

ls /this/path/does/not/exist 2> errors.log
echo "Command finished. Check errors.log."
cat errors.log

Fornecendo entrada com '<'

O operador < é usado para redirecionar a entrada padrão (STDIN). Em vez de esperar que você digite a entrada pelo teclado, o comando lerá sua entrada diretamente do arquivo especificado.

Isso é muito útil para automatizar tarefas nas quais um comando espera muitas entradas ou quando você deseja processar diretamente o conteúdo de um arquivo.

Exemplo: ordenando a partir de um arquivo

Vamos criar um arquivo com nomes desordenados e, depois, usar o comando sort para ler a entrada desse arquivo usando <.

echo -e "Charlie\nAlice\nBob" > names.txt
sort < names.txt

Verificação rápida: redirecionamento

Você aprendeu a redirecionar a saída padrão, acrescentar conteúdo à saída, lidar com erros e fornecer entrada a partir de arquivos. Vamos testar seu entendimento.

Recapitulação: o poder do redirecionamento de E/S

Ótimo trabalho! Você dominou os fundamentos do redirecionamento de E/S no Linux.

  • > redireciona STDOUT, substituindo arquivos.
  • >> redireciona STDOUT, acrescentando conteúdo aos arquivos.
  • 2> redireciona STDERR, capturando mensagens de erro.
  • < redireciona STDIN, permitindo que os comandos leiam arquivos.

Esses operadores são extremamente poderosos para criar scripts, registrar informações e automatizar tarefas. Continue praticando!

Perguntas Frequentes

A aula “Redirecionamento de entrada e saída (>, >>, <)” é grátis?

Sim — o texto completo de “Redirecionamento de entrada e saída (>, >>, <)” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Linux Command Line & Bash Scripting Mastery, atualize para CoddyKit PRO. O curso de Linux Command Line & Bash Scripting Mastery inclui 4 aulas no total.

O que vou aprender em “Redirecionamento de entrada e saída (>, >>, <)”?

Domine o redirecionamento da saída de comandos para arquivos e o uso de arquivos como entrada para comandos, tornando os scripts mais flexíveis. Você pratica Linux Command Line & Bash Scripting Mastery com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Linux Command Line & Bash Scripting Mastery?

Nenhuma experiência prévia é necessária. Linux Command Line & Bash Scripting Mastery no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Redirecionamento de entrada e saída (>, >>, <)”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Linux Command Line & Bash Scripting Mastery?

Sim. Cada aula de Linux Command Line & Bash Scripting Mastery inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Gerenciamento de processos (ps, top, kill)
  2. Redirecionamento de entrada e saída (>, >>, <)
  3. Encadeamento de comandos (|)
  4. Tarefas em Segundo Plano e Controle de Tarefas
← Voltar para Linux Command Line & Bash Scripting Mastery