Visualização e busca
Módulo 1 · Terminal
Você recebeu um CSV de duas mil linhas e quer só checar como são as primeiras dez antes de abrir no Excel (que é lento e vai congelar). Ou quer encontrar onde, num projeto inteiro, aparece a variável pas_sistolica que você quer renomear. Ou perdeu de vista um script chamado regressao.R que você criou há uns dois meses e não lembra em que pasta está. Estas são as operações deste capítulo.
Os comandos abaixo seguem o padrão Mac/Linux. Quando a versão Windows for diferente, indico em seguida.
Ver o conteúdo de um arquivo
cat — despejar tudo de uma vez
cat arquivo.txt # Mac/Linux: mostra o conteúdo completo na tela
type arquivo.txt # Windows: equivalenteBom para arquivos curtos (um README, um YAML, um pequeno script). Em arquivos grandes, é ruim — cat despeja tudo no terminal sem pausar; você não consegue ler.
less — paginar com controle
less arquivo.txt # Mac/Linux
more arquivo.txt # Windows e Mac/Linux: mais simples, com menos recursosless abre o arquivo em modo de visualização paginada. Atalhos de navegação:
| Tecla | Ação |
|---|---|
Espaço ou f |
Próxima página |
b |
Página anterior |
↓ ↑ |
Linha por linha |
g |
Início do arquivo |
G |
Fim do arquivo |
/palavra |
Busca |
n |
Próxima ocorrência |
q |
Sair |
less é uma das ferramentas mais subestimadas do terminal. Para arquivos grandes (CSVs de centenas de MB, logs, dumps de banco), é a única forma sã de inspecionar conteúdo sem travar a máquina.
head e tail — espiar pontas
head arquivo.csv # primeiras 10 linhas
head -n 20 arquivo.csv # primeiras 20 linhas
tail arquivo.csv # últimas 10 linhas
tail -n 50 arquivo.csv # últimas 50 linhas
tail -f log.txt # acompanha em tempo real (útil para logs)head é essencial para inspecionar CSVs antes de carregar:
$ head dados/coorte.csv
id,sexo,idade,pas_sistolica,pas_diastolica
1,F,42,138,82
2,M,67,156,94
3,F,55,142,88
...Em três segundos você confere o cabeçalho, o separador, o encoding aparente, e os tipos prováveis das primeiras colunas — sem abrir o Excel.
Encontrar arquivos pelo nome — find
find . -name "*.csv" # busca todos os .csv a partir da pasta atual (recursivo)
find . -name "regressao*" # busca tudo que começa com "regressao"
find ~ -name "*.qmd" # busca todos os .qmd na home
dir /S *.csv # Windows: equivalentefind é poderoso e tem dezenas de opções (filtrar por data, por tamanho, por permissões). Para o uso cotidiano, find . -name "padrão" cobre praticamente tudo.
Buscar texto dentro de arquivos — grep
grep "palavra" arquivo.txt # Mac/Linux: busca em um arquivo
grep -r "palavra" pasta/ # busca em toda a pasta, recursivo
grep -i "palavra" arquivo.txt # busca ignorando maiúsculas/minúsculas
grep -n "palavra" arquivo.txt # mostra número da linha onde aparece
grep -rn "pas_sistolica" . # busca recursiva com número de linha
findstr "palavra" arquivo.txt # Windows: equivalente básicoExemplo prático — você quer renomear pas_sistolica para pas em todo o projeto e antes precisa saber onde aparece:
$ grep -rn "pas_sistolica" .
./scripts/limpeza.R:14:dados <- dados |> rename(pas = pas_sistolica)
./scripts/analise.R:23:summarize(media_pas = mean(pas_sistolica))
./README.md:42:- `pas_sistolica`: pressão arterial sistólica em mmHgEm segundos você localizou as três ocorrências, em três arquivos diferentes, com o número da linha exato. O equivalente no Finder (busca em conteúdo de arquivo) existe mas é mais lento e menos preciso.
ripgrep é melhor que grep
Para projetos maiores, há uma versão moderna chamada ripgrep (rg) — escrita em Rust, dezenas de vezes mais rápida que o grep clássico, com sintaxe parecida e melhor padrão (por exemplo, ignora arquivos do .gitignore automaticamente). Vale a instalação: brew install ripgrep no Mac, apt install ripgrep no Linux. Depois é só usar rg no lugar de grep -rn na maioria dos casos.
Limpar a tela e ver histórico
Comandos auxiliares que aparecem o tempo todo:
clear # Mac/Linux: limpa a tela
cls # Windows: equivalente
history # Mac/Linux: lista comandos digitados recentemente
doskey /history # Windows cmd
Get-History # Windows PowerShellhistory é especialmente útil quando você fez algo certo na semana passada e não lembra a sequência. Ele lista numericamente; depois !N (onde N é o número) re-executa o comando.
Manual de um comando
Toda essa lista é uma fração do que cada comando aceita. Para descobrir mais, o terminal tem ajuda integrada:
man grep # Mac/Linux: manual completo (saia com 'q')
grep --help # ajuda resumida
help dir # Windows cmd
Get-Help dir # Windows PowerShellman é a referência canônica. Para iniciantes, costuma ser denso — perguntar a um agente de IA “como uso o find para achar todos os arquivos modificados nos últimos 7 dias?” é frequentemente mais rápido e mais didático.
O que vem a seguir
Os capítulos anteriores cobriram comandos. O último capítulo do Bloco fecha com atalhos de teclado que aceleram o uso interativo, um exercício prático integrando tudo, e um mapa de onde o terminal reaparece no resto do curso (Git, Quarto, agentes CLI, gerenciadores de pacote).