zsh Cheatsheet
5.9Atalhos, truques e keybindings essenciais do zsh para o seu terminal
Português: 2026-03-29
zsh é o shell padrão no macOS e está ganhando terreno sério no Linux, e com razão — ele pega tudo que o bash faz e adiciona completação mais inteligente, globbing melhor e um ecossistema de plugins que pode transformar seu terminal em algo genuinamente agradável de usar. Se você está usando zsh sem saber (obrigado, macOS Catalina), você está dirigindo um carro esportivo em primeira marcha.
O verdadeiro poder do zsh vive no seu editor de linha. Aqueles combos de Ctrl e Alt não são aleatórios — eles vêm da edição estilo Emacs, que é o modo padrão. Toda vez que você pressiona Ctrl-a para pular para o início de uma linha, está usando o mesmo binding que usuários do Emacs usam desde os anos 1970. Você também pode mudar para o modo vi se preferir, mas comece com os padrões. Eles são surpreendentemente bons quando você os internaliza.
Este cheatsheet foca no que vai te deixar mais rápido imediatamente: navegação na linha para parar de usar as setas, truques de histórico que evitam redigitar comandos, padrões de globbing que permitem ao zsh encontrar arquivos para você, e conhecimento suficiente de oh-my-zsh para montar um ambiente produtivo sem se afogar em opções. Estamos pulando o manual de 400 páginas e mantendo o que compensa diariamente.
Navegação na Linha
Esses funcionam no modo Emacs padrão (que é o que você está usando a menos que tenha explicitamente mudado para vi). Grave esses na memória muscular e suas mãos nunca vão sair da posição home.
Histórico
Seu histórico de shell é uma mina de ouro. O zsh mantém milhares de comandos por padrão, e esses atalhos ajudam a minerá-los eficientemente em vez de ficar apertando a seta para cima 47 vezes.
Globbing
É aqui que o zsh deixa o bash no chinelo. O globbing do zsh é tão poderoso que pode substituir o find para a maioria das buscas de arquivos do dia a dia. Sem pipes, sem subshells, apenas padrões.
Aliases
Aliases são como você faz o zsh parecer seu. Aqui estão os padrões que vale conhecer — os aliases específicos são por sua conta, mas essas formas desbloqueiam a maior produtividade.
Key Bindings
O editor de linha do zsh (zle) é totalmente customizável. Você pode revincular qualquer tecla a qualquer ação, e há centenas de widgets embutidos para escolher.
Modo Vi
Se você é usuário de vim/nvim, o modo vi faz o zsh parecer sua casa. Você ganha modo normal, modo de inserção e a maioria dos motions que já conhece.
oh-my-zsh Essenciais
oh-my-zsh é o framework mais popular para zsh, e merece. Mas com mais de 300 plugins, é fácil inflar sua config. Aqui estão os plugins e padrões que realmente valem a pena carregar.
Dicas
Adicione setopt AUTO_CD ao seu ~/.zshrc e você pode navegar por diretórios apenas digitando o caminho — sem precisar de cd. Digite .. para subir um diretório, ~/projects para ir para home. Quando se acostumar, digitar cd vai parecer desperdício de teclas.
O plugin zsh-autosuggestions é sem dúvida o maior ganho de produtividade que você pode adicionar. Ele mostra previsões em texto fantasma enquanto você digita, baseado no seu histórico. Pressione a seta para a direita para aceitar toda a sugestão, ou Alt-f para aceitar apenas a próxima palavra. Instale e se pergunte como viveu sem.
Use Ctrl-x Ctrl-e (depois de vincular com autoload -z edit-command-line && zle -N edit-command-line && bindkey '^X^E' edit-command-line) para abrir a linha de comando atual no seu $EDITOR. Comandos longos com pipes e loops são muito mais fáceis de compor no nvim do que em uma única linha de terminal.
Configure seu histórico corretamente. Adicione esses ao ~/.zshrc e você nunca mais vai perder um comando:
HISTSIZE=50000, SAVEHIST=50000, setopt SHARE_HISTORY (sincronizar entre sessões), setopt HIST_IGNORE_DUPS (pular duplicatas consecutivas), setopt HIST_IGNORE_SPACE (prefixe com espaço para manter fora do histórico — útil para comandos com secrets).
O globbing recursivo do zsh (**/*) é poderoso o suficiente para substituir uso básico do find. Quer todos os arquivos TypeScript? ls **/*.ts. Quer deletar todos os .DS_Store? rm -f **/.DS_Store. É mais rápido de digitar e mais fácil de lembrar que find . -name "*.ts".
Se os combos com a tecla Alt não funcionam no seu terminal (comum no macOS), vá nas preferências do terminal e habilite "Use Option as Meta key." No iTerm2 está em Profiles > Keys. No Terminal.app está em Settings > Profiles > Keyboard. Sem isso, Alt-f, Alt-b e Alt-d chegam mortos.
Aliases de sufixo são um recurso subestimado do zsh. Adicione alias -s py=python3 ao seu ~/.zshrc e você pode executar um script Python apenas digitando o nome do arquivo: script.py em vez de python3 script.py. Funciona para qualquer extensão — mapeie .json para jq ., .md para seu visualizador de markdown, .log para less.