Menos teclas, mais terminal

Aprenda hábitos que aceleram o terminal — aliases, Ctrl‑R, pipes, rg/fd/jq e scripts seguros — para ganhar velocidade e evitar erros em poucas semanas.

Avatar de Danrley Pereira
Danrley Pereira
Menos teclas, mais terminal

Todo mundo que passa o dia no terminal opera em um de dois modos. No lento, você digita cada comando por inteiro, procura na memória o nome exato daquela flag e reza pra não errar um rm. No rápido, a máquina parece adivinhar o que você quer antes de você terminar de pensar. A diferença raramente é talento — é um punhado de hábitos que, somados, viram velocidade. Aqui estão os que mais rendem.

Transmitir a ideia de fluidez e velocidade ao operar no terminal — mãos e comandos fluindo sem atrito.
Transmitir a ideia de fluidez e velocidade ao operar no terminal — mãos e comandos fluindo sem atrito.

Aliases e funções: escreva uma vez, use pra sempre

A primeira regra é simples: se doeu digitar duas vezes, vira atalho. Comandos que você repete o dia inteiro merecem um alias.

alias gs='git status -sb'
alias ll='ls -lah'
alias ..='cd ..'

Quando o comando precisa de argumentos, alias não dá conta — use uma função.

# cria a pasta e já entra nela
mkcd() { mkdir -p "$1" && cd "$1"; }

# git commit rápido com mensagem
gc() { git commit -m "$*"; }

Jogue tudo no seu ~/.bashrc ou ~/.zshrc e recarregue com source ~/.zshrc. Ao longo de meses, esses segundos economizados viram horas — e, mais importante, tiram atrito do caminho entre a ideia e a execução.

Nunca digite o mesmo comando duas vezes

Você já rodou aquele comando gigante ontem. Não digite de novo: Ctrl-R abre a busca reversa no histórico. Comece a digitar um pedaço e o shell completa com o match mais recente; aperte Ctrl-R de novo para ir voltando.

Se você instalar o fzf, o Ctrl-R vira uma lista fuzzy navegável do seu histórico inteiro — a diferença é gritante. Dois curingas do dia a dia:

!!        # repete o último comando
sudo !!   # repete o último, agora com sudo

Esse último resolve o clássico "ah, precisava de permissão" sem redigitar nada.

Compondo comandos: pipes e xargs

A filosofia do Unix é ferramentas pequenas que fazem uma coisa bem e se encaixam. O pipe (|) passa a saída de um comando como entrada do próximo; o xargs pega essas linhas e as transforma em argumentos de outro comando.

# quantas linhas têm todos os arquivos que citam TODO?
grep -rl TODO . | xargs wc -l

# comprime cada .log encontrado, um por vez
find . -name '*.log' | xargs -I{} gzip {}

Dominar essa composição vale mais que decorar cem flags: você monta a ferramenta certa na hora, encaixando peças que já conhece.

Comandos destrutivos sem sustos

Velocidade sem rede vira desastre. Antes de apagar, veja o que vai apagar: rode o find ou o ls primeiro, confira a lista, e só então troque por rm. Use -i para confirmar arquivo a arquivo e prefira --dry-run sempre que a ferramenta oferecer.

O maior perigo é rm -rf com variável vazia — um $DIR não definido vira rm -rf /. Blinde com a expansão que falha se a variável estiver vazia:

rm -rf "${BUILD_DIR:?precisa estar definida}/dist"

Se BUILD_DIR não existir, o comando aborta com uma mensagem clara em vez de sair destruindo. Pequeno hábito, catástrofe evitada.

Scripts que não te traem: set -euo pipefail

No momento em que você cola comandos num arquivo .sh, você virou autor de software — e software silencioso é software perigoso. Comece todo script assim:

#!/usr/bin/env bash
set -euo pipefail

Traduzindo: -e faz o script parar no primeiro comando que falha, em vez de seguir cavando; -u transforma variável não definida em erro (adeus, typos silenciosos); e pipefail faz um erro no meio de um pipe realmente contar como falha, e não ser engolido pelo último comando. São três palavras que separam um script confiável de uma bomba-relógio.

Troque o kit velho pelo rg, fd e jq

O grep e o find funcionam, mas o ecossistema evoluiu. Vale adotar:

  • ripgrep (rg) — busca texto respeitando .gitignore, com saída colorida e muito mais rápida.
  • fd — acha arquivos com sintaxe humana, sem a ginástica de aspas e -name do find.
  • jq — fatia e filtra JSON como um bisturi, essencial pra mexer com APIs no terminal.
rg 'TODO' --type py
fd '\.env$'
curl -s https://api.exemplo.com/itens | jq '.items[].name'

Não precisa trocar tudo de uma vez: instale um, use por uma semana, e você não volta mais.


Não tente absorver os seis hábitos hoje. Escolha um — provavelmente o Ctrl-R ou um par de aliases — e use até virar reflexo. Terminal rápido não é um dom que uns têm e outros não: é sedimentação. Uma camada por semana, e em um mês suas mãos vão mais rápido que sua cabeça.

Gostou do artigo?

Compartilhe com seus amigos e ajude a espalhar conhecimento!