Linux / Comandos essenciais por tarefa: arquivos, processos, rede e pacotes

Esta referência reúne comandos do Linux por tarefa: arquivos, texto, permissões, processos, sistema, disco, rede e pacotes. Localize a categoria da sua tarefa, confira a função do comando e abra o tutorial associado para ver opções e exemplos detalhados.

As opções disponíveis variam com a distribuição, o shell e os pacotes instalados. Consulte man comando, comando --help ou, no Bash, help comando para confirmar o comportamento da versão em uso.

Nas tabelas, (PT) identifica um tutorial em português; os demais tutoriais de comandos estão em inglês.

Como consultar a sintaxe e localizar um comando

Se você não souber a sintaxe exata ou o local de execução de um comando, tente usar os seguintes comandos.

man ls
ls --help
type cd
command -v python

man ls abre o manual, normalmente encerrado com q; ls --help imprime uma ajuda breve. type cd identifica cd como comando interno do shell. command -v python consulta a resolução do nome: o resultado pode ser um caminho ou outro tipo de comando. Se python não existir, não haverá caminho; algumas distribuições oferecem python3.

Ajuda e ambiente do shell

Comando Visão geral
man Exibe as páginas de manual de comandos, arquivos de configuração e chamadas de sistema.
info Lê documentação no formato Info, comum em programas GNU.
help Exibe ajuda para comandos internos do Bash, como cd e read.
apropos Procura palavras-chave na descrição do manual para encontrar comandos relacionados.
whatis Mostra uma descrição curta do manual sobre o que um comando faz.
type Identifica se um nome corresponde a um alias (apelido), função, comando interno do shell ou executável.
command Executa comandos sem procurar funções do shell. Com -v, informa como um nome é resolvido, o que pode ser um comando interno, alias, função ou caminho.
history (PT) Usado para verificar ou reexecutar o histórico de comandos executados anteriormente no shell atual.
alias Define aliases, ou apelidos, para comandos usados com frequência.
unalias Remove aliases definidos no shell atual.
clear Limpa a tela do terminal.
watch Executa repetidamente o comando especificado em intervalos regulares para observar alterações nos resultados.
time Mede o tempo decorrido e o tempo de CPU (unidade central de processamento) consumido pela execução de um comando.
env Exibe variáveis de ambiente ou executa um comando com variáveis de ambiente temporárias.
printenv Exibe os valores de todas as variáveis de ambiente ou das variáveis de ambiente especificadas.

Navegação e informações de arquivos

Comando Visão geral
pwd Exibe o caminho absoluto do diretório de trabalho atual.
ls Verifica a lista de arquivos e diretórios, permissões, proprietário e tamanho, etc.
cd Altera o diretório de trabalho atual para outro caminho.
tree Exibe a estrutura de diretórios e arquivos em forma de árvore. A instalação pode ser necessária separadamente.
file Identifica o tipo de arquivo por testes de conteúdo e metadados, em vez de depender apenas da extensão.
stat Exibe tamanho, permissões, inode (estrutura de metadados do arquivo) e horários de acesso e modificação.
basename Extrai apenas o nome do arquivo ou diretório final de um caminho completo.
dirname Extrai o caminho do diretório excluindo o último componente de um caminho completo.
realpath Exibe o caminho absoluto resolvendo caminhos relativos e links simbólicos.
readlink Verifica o caminho de destino para o qual o link simbólico aponta.

Gerenciamento de arquivos e diretórios

Comando Visão geral
touch Cria um arquivo vazio ou altera os tempos de acesso/modificação de um arquivo existente.
mkdir Cria um novo diretório.
rmdir Exclui um diretório vazio.
cp Copia arquivos ou diretórios para outro local.
mv Move ou renomeia arquivos e diretórios.
rm Exclui arquivos ou diretórios. A exclusão não vai para a lixeira, então verifique cuidadosamente o destino.
ln Cria um link físico ou link simbólico de um arquivo.
install Copia arquivos e permite definir permissões, proprietário e diretório de destino.
shred Sobrescreve dados de um arquivo; a remoção depende de opções como -u. Não garante apagar todas as cópias em SSDs ou sistemas com cópia na gravação (CoW).
mktemp Cria arquivos ou diretórios temporários com nomes únicos, evitando conflitos na criação.
truncate Reduz ou aumenta um arquivo para o tamanho especificado.
dd Copia ou converte dados em blocos. Se o dispositivo de destino for especificado incorretamente, os dados podem ser perdidos.
Comando Visão geral
cat Exibe o conteúdo do arquivo ou concatena múltiplos arquivos.
tac Imprime em ordem inversa a partir da última linha do arquivo.
less Lê arquivos grandes página por página enquanto se move para cima e para baixo e realiza buscas.
more Verifica o conteúdo de um arquivo sequencialmente, uma tela de cada vez.
head Verifica a parte inicial de um arquivo ou saída de comando.
tail (PT) Imprime a parte final de um arquivo e, com a opção -f, você pode monitorar continuamente as alterações de log.
grep (PT) Encontra linhas em um arquivo ou saída de comando que correspondam a uma string ou expressão regular.
find Procura arquivos em um caminho especificado usando condições como nome, tipo, tamanho, permissões e horário de modificação.
locate Encontra rapidamente caminhos pesquisando em um banco de dados de arquivos pré-construído.
which Procura executáveis no PATH. Para identificar aliases e funções do shell, prefira type.
whereis Procura o executável, a fonte e a localização da página de manual de um comando.
diff Compara as diferenças entre dois arquivos ou diretórios linha por linha.
cmp Compara dois arquivos byte a byte para encontrar a primeira localização diferente.

Processamento de texto

Comando Visão geral
wc Conta o número de linhas, palavras, caracteres e bytes em arquivos ou entradas.
sort Ordena linhas de texto com base em caracteres, números ou colunas especificadas.
uniq Remove linhas duplicadas adjacentes ou conta o número de duplicatas.
cut Extrai campos de cada linha com base no intervalo de caracteres especificado ou delimitador.
paste Combina linhas correspondentes de vários arquivos horizontalmente.
join Une linhas de dois arquivos de texto ordenados com base em campos comuns.
comm Compara dois arquivos ordenados para distinguir linhas comuns e linhas únicas de cada arquivo.
tr Substitui caracteres da entrada, remove caracteres selecionados ou reduz repetições.
tee Envia a entrada à saída padrão e, simultaneamente, a um ou mais arquivos.
xargs Transforma itens da entrada padrão em argumentos e executa outro comando.
sed Faz buscas, substituições, exclusões e seleção de linhas em um fluxo de texto.
awk Analisa registros e campos de texto, calcula valores e produz saídas conforme padrões e condições.
column Organiza o texto delimitado em um formato de colunas fácil de ler.
split Divide arquivos grandes em múltiplos arquivos com base no tamanho ou no número de linhas.
csplit Divide arquivos com base no número de linhas ou nas posições onde os padrões aparecem.
fmt Reajusta o comprimento das linhas de parágrafos de texto geral para torná-los mais fáceis de ler.
fold (PT) Divide linhas longas de entrada em múltiplas linhas de acordo com uma largura especificada.
printf Exibe strings e números em um formato especificado.

Usuários e permissões

Comando Visão geral
whoami Imprime o nome do usuário que está executando o comando atual.
id Verifica ID de usuário, grupo padrão e informações de grupos suplementares.
who Exibe os usuários atualmente conectados ao sistema e seus terminais de login.
w Mostra usuários conectados, tarefas em execução e carga do sistema juntos.
last Verifica registros de login e logout.
groups (PT) Exibe os grupos aos quais o usuário atual ou especificado pertence.
passwd Altera ou gerencia senhas de usuários.
sudo (PT) Permite que usuários autorizados executem comandos como outros usuários, geralmente com privilégios de root.
su (PT) Executa um shell ou comando com as credenciais de outra conta de usuário.
chmod Altera as permissões de leitura, escrita e execução de arquivos e diretórios.
chown Altera o proprietário ou grupo proprietário de arquivos e diretórios.
chgrp Altera o grupo proprietário de arquivos e diretórios.
umask Consulta ou define a máscara que limita as permissões solicitadas ao criar arquivos e diretórios.
getent Consulta entradas no banco de dados do Name Service Switch, como usuários, grupos e hosts.

Processos e sessões de terminal

Comando Visão geral
ps Verifica o ID, usuário, status e comando de execução dos processos atualmente em execução.
top Verifica o uso de CPU e memória por processo em tempo real.
htop Exibe e permite gerenciar processos em uma tela interativa. Pode exigir instalação separada.
pgrep Procura IDs de processos pelo nome do processo e condições.
pkill Envia um sinal para processos que correspondam ao nome ou às condições.
kill Envia um sinal, como uma solicitação de término, especificando um ID de processo.
killall Envia um sinal para processos que correspondam ao nome especificado.
jobs Verifica trabalhos em segundo plano e parados executados no shell atual.
bg Continua executando trabalhos de shell parados em segundo plano.
fg Traz um trabalho de shell em segundo plano ou parado para o primeiro plano.
nohup (PT) Inicia um comando ignorando o sinal de desconexão SIGHUP. Isso não substitui um gerenciador de serviços nem garante a sobrevivência em qualquer política de sessão.
nice Executa ajustando a prioridade de escalonamento de CPU de um novo processo.
renice Altera a prioridade de escalonamento da CPU de um processo em execução.
screen Mantém sessões de terminal que podem ser separadas e retomadas posteriormente.
tmux Organiza janelas e painéis de terminal e permite separar e retomar sessões.

Informações do sistema e serviços

Comando Visão geral
uptime (PT) Verifica o tempo de atividade do sistema, o número de usuários logados e a carga média.
free (PT) Verifica a capacidade total e o status de uso da memória física e do espaço de troca.
uname Exibe informações como a versão do kernel em execução e a arquitetura de hardware.
hostnamectl Em um ambiente systemd, verifica o nome do host, a distribuição, o kernel e informações de arquitetura ou define o nome do host.
date Exibe a data e a hora ou formata esses valores conforme as opções escolhidas.
timedatectl Consulta ou configura relógio, fuso horário e sincronização de hora em sistemas com systemd.
lscpu Exibe a arquitetura da CPU, núcleos, threads e informações de virtualização.
lsmod Verifica a lista de módulos atualmente carregados no kernel e seu status de uso.
modinfo Verifica a localização do arquivo, descrição, versão e parâmetros dos módulos do kernel.
dmesg Verifica as mensagens de inicialização, hardware e drivers no buffer de anel do kernel.
systemctl Consulta e controla serviços e outras unidades do systemd. Iniciar agora e habilitar para a inicialização são operações diferentes.
journalctl Exibe logs do sistema e de serviços armazenados no journal do systemd.
reboot Solicita a reinicialização do sistema. Antes de usar, confira as tarefas em execução e os demais usuários.
shutdown Solicita ou agenda o desligamento ou a reinicialização do sistema.

Discos e sistemas de arquivos

Comando Visão geral
df Verifica a capacidade total e o espaço disponível para cada sistema de arquivos montado.
du (PT) Calcula o uso de disco de arquivos e diretórios.
lsblk Verifica a hierarquia de discos, partições e volumes lógicos, bem como seus pontos de montagem.
blkid Consulta o UUID, tipo de sistema de arquivos e rótulo dos dispositivos de bloco.
mount Monta um sistema de arquivos em um diretório especificado ou verifica o status atual da montagem.
umount Desmonta um sistema de arquivos que está montado.
fdisk Consulta ou edita tabelas de partições, incluindo MBR e GPT. Confirme o disco de destino antes de alterar dados.
parted Cria e modifica partições de disco, incluindo seus limites. Redimensionar uma partição não redimensiona automaticamente o sistema de arquivos contido nela.
mkfs Cria um sistema de arquivos em um dispositivo ou partição, podendo sobrescrever os dados existentes.
fsck Aciona o verificador específico do sistema de arquivos para conferir e, quando apropriado, reparar erros. Em geral, o destino deve estar desmontado; consulte o verificador correspondente.
sync Solicita que os dados de escrita do sistema de arquivos que estão na memória sejam refletidos no dispositivo de armazenamento.

Rede

IP é o protocolo de endereçamento da rede; DNS é o sistema que resolve nomes de domínio. TCP e UDP são protocolos de transporte. As ferramentas abaixo consultam ou configuram partes diferentes dessa comunicação.

Comando Visão geral
ip Verifica ou configura interfaces de rede, endereços IP, roteamento e tabelas de vizinhos.
ss Consulta sockets TCP/UDP, portas em escuta e estados de conexão.
ping Envia pacotes ICMP para verificar se o host de destino responde e mede o tempo de ida e volta.
tracepath Investiga o caminho da rede e a unidade máxima de transmissão (MTU) até o destino.
traceroute Traça o caminho dos roteadores que os pacotes percorrem para chegar ao destino.
dig Consulta registros de servidores DNS e examina as respostas em detalhe.
host Consulta brevemente informações de DNS para nomes de domínio e endereços IP.
nslookup Consulta informações de nomes de domínio e endereços IP em servidores DNS.
curl Solicita ou envia dados por uma URL, usando protocolos como HTTP.
wget Baixa arquivos da web e de servidores FTP; também oferece downloads recursivos.
nc Usa Netcat para conexões TCP/UDP, verificação de portas e transferências simples de dados.
nmap Investiga hosts, portas abertas e serviços em alvos para os quais há autorização.
ethtool Verifica velocidade de link, driver e configurações de recursos de uma interface Ethernet.
resolvectl Verifica configurações de DNS e status de consultas em um ambiente systemd-resolved.

Acesso remoto e transferência de arquivos

SSH (Secure Shell) fornece uma conexão criptografada para acesso remoto. Os comandos desta seção usam esse acesso ou sincronizam dados entre sistemas.

Comando Visão geral
ssh Abre uma conexão remota criptografada com SSH ou executa comandos no sistema remoto.
scp Copia arquivos entre sistemas locais e remotos por uma conexão SSH.
sftp Fornece uma sessão interativa de transferência de arquivos por SSH.
rsync Sincroniza arquivos e diretórios locais ou remotos, transferindo as alterações necessárias.
ssh-keygen Cria e gerencia pares de chaves SSH e suas impressões digitais.
ssh-copy-id Instala uma chave pública na lista de chaves autorizadas de uma conta remota.

Compressão e arquivamento

Comando Visão geral
tar Reúne arquivos e diretórios em um arquivo de arquivamento, ou extrai seu conteúdo. Pode usar ferramentas de compressão em conjunto.
gzip Comprime arquivos no formato gzip.
gunzip Descomprime arquivos no formato gzip.
bzip2 Comprime arquivos no formato bzip2.
bunzip2 Descomprime arquivos no formato bzip2.
xz Comprime arquivos no formato xz.
unxz Descomprime arquivos no formato xz.
zip Cria arquivos ZIP com arquivos e diretórios.
unzip Lista ou extrai o conteúdo de arquivos ZIP.

Gerenciamento de pacotes

Os comandos de gerenciamento de pacotes variam dependendo da distribuição. Você deve verificar a distribuição atual com cat /etc/os-release e usar a ferramenta apropriada.

Comando Visão geral
apt Oferece uma interface voltada ao uso interativo para buscar, instalar, remover e atualizar pacotes em Debian e Ubuntu.
apt-get Executa operações de pacotes APT em Debian e Ubuntu; é uma opção usual para scripts.
dpkg Realiza instalação local de pacotes DEB e consultas de banco de dados de pacotes em sistemas baseados em Debian.
dnf Gerencia pacotes e repositórios em sistemas Fedora/RHEL/Rocky Linux/AlmaLinux.
rpm Consulta e gerencia pacotes RPM e a base de dados dos pacotes instalados.
zypper Gerencia pacotes e repositórios no openSUSE e SUSE Linux Enterprise.
pacman Instala, remove e atualiza pacotes e o sistema em distribuições baseadas em Arch Linux.
apk Pesquisa, instala e remove pacotes e atualiza informações dos repositórios no Alpine Linux.

Pontos a verificar ao usar comandos

  • Para comandos que modificam ou excluem dados, como rm, dd, mkfs, fdisk, primeiro verifique o caminho e o dispositivo de destino.
  • Use sudo somente para comandos necessários e não execute comandos como administrador se não os entender.
  • Verifique com man e --help se as opções encontradas na internet existem em seu sistema atual.
  • Comandos ou opções podem não existir dependendo da distribuição, da versão do programa e dos pacotes instalados.

Consulte documentos oficiais

Esta lista é um ponto de partida para encontrar comandos rapidamente. No uso real, é mais seguro verificar a sintaxe básica de cada comando, opções mais comumente usadas, exemplos de execução e precauções antes de usá-lo.