Pular para conteúdo

Operadores do terminal Linux

Os operadores de shell ajudam a combinar comandos, controlar fluxo de execução e redirecionar entrada/saída no terminal.


1) Pipe |

Envia a saída de um comando para a entrada do próximo.

ps aux | grep nginx

Uso prático: listar processos e filtrar apenas os que contêm nginx.


2) Redirecionamento de saída >

Sobrescreve um arquivo com a saída do comando.

echo "deploy iniciado" > status.txt

Uso prático: criar/atualizar um arquivo de status com um valor único.


3) Redirecionamento de saída em append >>

Adiciona a saída ao final do arquivo, sem apagar o conteúdo anterior.

date >> deploy.log

Uso prático: manter histórico de execuções em log.


4) Redirecionamento de erro 2>

Envia apenas erros (stderr) para um arquivo.

ls /diretorio-inexistente 2> erros.log

Uso prático: separar erros de execução para troubleshooting.


5) Redirecionar saída e erro &>

Envia saída normal e erro para o mesmo destino.

./script.sh &> resultado.log

Uso prático: capturar tudo de uma automação em um único arquivo de log.


6) Operador lógico AND &&

Executa o próximo comando somente se o anterior for bem-sucedido.

npm ci && npm test

Uso prático: rodar testes apenas se a instalação de dependências funcionar.


7) Operador lógico OR ||

Executa o próximo comando somente se o anterior falhar.

grep "ERROR" app.log || echo "Nenhum erro encontrado"

Uso prático: fornecer fallback/mensagem amigável quando não há resultado.


8) Sequência ;

Executa comandos em sequência, com sucesso ou falha no anterior.

mkdir -p backup; cp app.log backup/

Uso prático: útil quando você quer tentar ambos os comandos independentemente do status do primeiro.


9) Execução em background &

Roda o comando em segundo plano.

python3 -m http.server 8000 &

Uso prático: subir um servidor temporário e continuar usando o terminal.


10) Substituição de comando $(...)

Executa um comando e usa sua saída dentro de outro.

echo "Host atual: $(hostname)"

Uso prático: montar mensagens dinâmicas em scripts.


11) Here document <<EOF

Permite enviar múltiplas linhas para a entrada padrão de um comando.

cat <<EOC > config.env
APP_NAME=second-brain
APP_ENV=dev
EOC

Uso prático: gerar arquivos de configuração rapidamente.


12) Encadeamento com agrupamento () e {}

  • () executa em subshell.
  • {} executa no shell atual.
(cd /tmp && pwd)
{ echo "inicio"; date; echo "fim"; } > bloco.log

Uso prático: - com () você altera diretório sem afetar o shell principal; - com {} você agrupa saída de vários comandos para um único redirecionamento.


Dica DevOps

Em pipelines e scripts, os operadores mais usados no dia a dia tendem a ser: - | - && - || - > / >> - 2>

Dominar esses operadores reduz tempo de troubleshooting e melhora automações.


Notas relacionadas