Encadeamento de comandos (|)
Entenda o poder dos pipes para conectar comandos, enviando a saída de um comando como entrada para outro em operações complexas.
Encadeamento de comandos (|) é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 3 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 DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.
Conecte comandos com pipes
Boas-vindas! No Linux, muitas vezes você precisa combinar o poder de vários comandos para obter um resultado específico. É aí que os pipes são úteis.
Um pipe permite enviar a saída de um comando diretamente como entrada para outro comando. Pense nele como uma esteira para dados!
O símbolo de pipe '|'
O símbolo de pipe é uma barra vertical: |. Você deve colocá-lo entre dois comandos.
- O comando à esquerda envia sua saída padrão (o que normalmente exibe na tela).
- O comando à direita recebe essa saída como sua entrada padrão.
Esse é um conceito fundamental para trabalhar com eficiência na linha de comando!
Seu primeiro pipe: `ls | less`
Vamos ver um pipe em ação. O comando ls -l /usr/bin lista muitos arquivos, geralmente mais do que cabem em uma tela.
Ao direcionar sua saída para less por meio de um pipe, você pode visualizá-la página por página. Experimente executar este exemplo:
ls -l /usr/bin | lessFiltrando a saída com `grep`
Os pipes são excelentes para filtrar. O comando grep procura padrões em textos. Quando combinado com um pipe, ele pode filtrar a saída de outro comando.
Este comando lista todos os arquivos do diretório atual e depois filtra o resultado para mostrar apenas os que terminam em .txt:
ls | grep .txtContando itens com `wc`
O comando wc (contagem de palavras) pode contar linhas, palavras ou caracteres. Quando usado com um pipe, ele conta a partir da entrada recebida pelo pipe.
Para contar quantos arquivos .txt existem no diretório atual, você pode encadear ls, grep e wc -l (contagem de linhas):
ls | grep .txt | wc -lEncadeando vários comandos
Você não está limitado a apenas dois comandos! Pode encadear vários comandos usando múltiplos pipes, criando sequências poderosas.
Cada pipe passa a saída do comando anterior para o próximo comando da sequência:
ps aux | grep chrome | wc -lOrdenando a saída de um pipe (`sort`)
O comando sort organiza linhas de texto em ordem alfabética ou numérica. Ele costuma ser usado depois de um pipe para organizar dados.
Este exemplo lista os arquivos em /etc e os ordena em ordem alfabética inversa, mostrando apenas os 5 primeiros resultados:
ls /etc | sort -r | head -n 5Encontrando linhas únicas (`uniq`)
O comando uniq remove linhas adjacentes duplicadas. Ele é mais eficaz quando usado depois de sort, que reúne as linhas idênticas.
Vamos ordenar uma lista de frutas e, depois, encontrar as que são únicas:
echo -e "apple\nbanana\napple\norange" | sort | uniqPipes versus redirecionamento de E/S
Lembra-se do redirecionamento de E/S (>, >>, <) da lição anterior?
- Pipes (
|): Conectam a saída de um comando à entrada de outro comando. Assim, os dados continuam fluindo entre os programas. - Redirecionamento (
>,<): Conecta a entrada/saída de um comando a um arquivo. Isso salva os dados no disco ou os lê do disco.
Ambos são poderosos, mas têm finalidades diferentes.
Verificação de conhecimentos sobre pipes
Você aprendeu a conectar comandos usando pipes. Vamos testar seu entendimento!
Recapitulação: o poder dos pipes
Ótimo trabalho! Você dominou os conceitos básicos do uso de pipes com comandos no Linux.
- Os pipes (
|) conectam a saída de um comando à entrada de outro. - Eles permitem encadear comandos para realizar tarefas poderosas de filtragem, ordenação e processamento.
- Os pipes são diferentes do redirecionamento de E/S, que conecta comandos a arquivos.
Continue praticando com comandos diferentes e veja quanto você pode realizar combinando-os!
Perguntas Frequentes
A aula “Encadeamento de comandos (|)” é grátis?
Sim — o texto completo de “Encadeamento de comandos (|)” é 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 DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.
O que vou aprender em “Encadeamento de comandos (|)”?
Entenda o poder dos pipes para conectar comandos, enviando a saída de um comando como entrada para outro em operações complexas. Você pratica DevOps Bootcamp 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 DevOps Bootcamp?
Nenhuma experiência prévia é necessária. DevOps Bootcamp 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 3 de 4.
Quanto tempo leva a aula “Encadeamento de comandos (|)”?
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 DevOps Bootcamp?
Sim. Cada aula de DevOps Bootcamp 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
- Gerenciamento de processos (ps, top, kill)
- Redirecionamento de entrada e saída (>, >>, <)
- Encadeamento de comandos (|)
- Tarefas em Segundo Plano e Controle de Tarefas