Consultar comandos Linux e exemplos

Use a busca do navegador ou abra uma seção. Revise caminhos, permissões e opções destrutivas antes de executar comandos no seu sistema.

Funciona localmente no seu navegador
Comando Descrição
arch Nome de hardware da máquina informado pelo kernel (o mesmo valor de uname -m)
uname -m Nome de hardware da máquina, por exemplo x86_64
uname -r Versão do kernel em execução, por exemplo 5.10.134-16.al8.x86_64
dmidecode -q Inventário de hardware DMI/SMBIOS (BIOS, placa-mãe, memória) sem os avisos de entradas desconhecidas (somente root)
hdparm -i /dev/hda Identifica um disco IDE ou SATA: modelo, firmware, número de série e modos suportados
hdparm -tT /dev/sda -T mede leituras vindas do cache e -t mede leituras do próprio dispositivo, o que dá um número de desempenho bruto
cat /proc/cpuinfo Modelo da CPU, número de núcleos e flags exatamente como o kernel os exporta
cat /proc/interrupts Contadores de interrupção por CPU e por dispositivo, úteis para encontrar um controlador sobrecarregado
cat /proc/meminfo Contadores de memória do kernel: o arquivo que o free lê
cat /proc/swaps Áreas de swap ativas com tamanho, espaço usado e prioridade
cat /proc/version String de versão do kernel, incluindo o compilador que o construiu
cat /proc/net/dev Contadores de bytes, pacotes, erros e descartes de cada interface de rede
cat /proc/mounts Todos os sistemas de arquivos montados com suas opções de montagem atuais
lspci -tv Dispositivos PCI em forma de árvore, mostrando barramentos, pontes e os dispositivos ligados a elas
lsusb -tv Dispositivos USB em forma de árvore com os IDs de fabricante e produto (pacote usbutils)
date Data e hora atuais do relógio do sistema
cal 2007 Calendário de um mês ou de um ano inteiro; aqui todo o ano de 2007
date 041217002007.00 Ajusta o relógio no formato MMDDhhmm[[CC]YY][.ss]: 17 de dezembro de 2007, 00:20 (somente root)
clock -w Grava o relógio do sistema no relógio de hardware para que a hora sobreviva a uma queda de energia (hwclock -w, somente root)

Comando Descrição
shutdown -h now Desliga a máquina imediatamente (somente root)
init 0 Muda para o runlevel 0, que para o sistema (somente root)
telinit 0 Pede ao init o runlevel 0 pelo socket de controle: a mesma parada (somente root)
shutdown -h hours:minutes & Agenda o desligamento para um horário escolhido e devolve o prompt
shutdown -c Cancela um desligamento que havia sido agendado antes
shutdown -r now Reinicia a máquina agora (somente root)
reboot Reinicia via init ou systemd (somente root)
logout Fecha o shell de login atual

Comando Descrição
cd /home Entrar em um diretório informado por um caminho absoluto
cd .. Subir um nível de diretório
cd ../.. Subir dois níveis de diretório
cd Ir para o diretório pessoal
cd ~user1 Ir para o diretório pessoal de outro usuário
cd - Voltar ao diretório em que você estava antes
pwd Mostrar o diretório de trabalho atual
ls Listar as entradas do diretório atual
ls -F Listar com um marcador de tipo: / diretório, * executável, @ link simbólico
ls -l Listagem longa com permissões, dono, tamanho e data de modificação
ls -a Incluir as entradas que começam com ponto, como .bashrc
ls *[0-9]* Listar apenas os nomes que contêm um dígito; o shell expande o padrão
tree Árvore de diretórios do caminho atual; vem em um pacote separado, por isso costuma faltar
lstree Outro nome para a mesma listagem em árvore; na maioria dos sistemas é um alias
mkdir dir1 Criar um diretório
mkdir dir1 dir2 Criar dois diretórios em um único comando
mkdir -p /tmp/dir1/dir2 Criar os diretórios pais necessários e não falhar quando o caminho já existe
rm -f file1 Apagar um arquivo e ignorar um nome inexistente em vez de perguntar
rmdir dir1 Remover um diretório vazio
rm -rf dir1 Apagar um diretório com tudo dentro dele, sem qualquer pergunta
rm -rf dir1 dir2 Apagar duas árvores inteiras em um único comando
mv dir1 new_dir Renomear um diretório ou movê-lo quando o destino é outro caminho
cp file1 file2 Copiar um arquivo
cp dir/* . Copiar todo o conteúdo de um diretório para o diretório atual
cp -a /tmp/dir1 . Cópia de arquivo que preserva permissões, dono, links e datas
cp -a dir1 dir2 A mesma cópia de arquivo para uma segunda árvore
ln -s file1 lnk1 Criar um link simbólico que guarda um caminho
ln file1 lnk1 Criar um link físico: um segundo nome para o mesmo inode
touch -t 0712250000 file1 Definir a data de modificação em 25 de dezembro de 2007 às 00:00 em vez de agora
iconv -l Listar todas as codificações de caracteres que esta compilação do iconv conhece
iconv -f fromEncoding -t toEncoding inputFile > outputFile Converter um arquivo de uma codificação para outra e gravar o resultado em um arquivo novo
find . -maxdepth 1 -name '*.jpg' -exec ls -l {} \; Mostrar apenas os JPEG deste diretório e executar um comando em cada resultado

Comando Descrição
find / -name file1 Procurar um nome de arquivo exato em todo o sistema de arquivos
find / -user user1 Todos os arquivos que pertencem a um usuário
find /home/user1 -name \*.bin Padrão de nome com curinga, procurado abaixo de um diretório
find /usr/bin -type f -atime +100 Arquivos regulares lidos pela última vez há mais de 100 dias
find /usr/bin -type f -mtime -10 Arquivos regulares modificados nos últimos dez dias
find / -name \*.rpm -exec chmod 755 '{}' \; Executar um comando em cada resultado; {} representa o caminho encontrado
find / -xdev -name \*.rpm Ficar dentro de um único sistema de arquivos, ignorando mídias montadas e compartilhamentos de rede
locate \*.ps Procurar nomes no índice do updatedb: muito mais rápido que o find, mas só tão atual quanto a última indexação
whereis halt Localizar o binário, o código-fonte e a página de manual de um comando
which halt Mostrar qual executável o shell executaria

Comando Descrição
mount /dev/hda2 /mnt/hda2 Montar uma partição em um diretório da árvore de arquivos (somente root)
umount /dev/hda2 Desmontar a partição; o ponto de montagem também serve como argumento
fuser -km /mnt/hda2 Matar os processos que ainda usam o ponto de montagem para poder desmontá-lo (somente root)
umount -n /mnt/hda2 Desmontar sem gravar a mudança em /etc/mtab
mount /dev/fd0 /mnt/floppy Montar a primeira unidade de disquete (nome de dispositivo antigo)
mount /dev/cdrom /mnt/cdrom Montar a unidade óptica que fica atrás do link /dev/cdrom
mount /dev/hdc /mnt/cdrecorder Montar o terceiro dispositivo da antiga nomenclatura hdX, normalmente um gravador de CD
mount /dev/hdb /mnt/cdrecorder O mesmo para o segundo dispositivo do primeiro canal IDE
mount -o loop file.iso /mnt/cdrom Expor o conteúdo de uma imagem ISO como um diretório
mount -t vfat /dev/hda5 /mnt/hda5 Montar uma partição FAT com o driver vfat para que arquivos do Windows continuem legíveis
mount /dev/sda1 /mnt/usbdisk Montar a primeira partição de um disco USB
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share Montar um compartilhamento do Windows; os kernels atuais usam -t cifs e um arquivo de credenciais no lugar do smbfs

Comando Descrição
df -h Espaço livre de cada sistema de arquivos em unidades legíveis
ls -lSr |more Arquivos deste diretório ordenados por tamanho, o maior primeiro, paginados com more
du -sh dir1 Espaço total em disco usado por um diretório
du -sk * | sort -rn Tamanho de cada entrada em kilobytes, do maior para o menor
rpm -q -a --qf '%10{SIZE}\t%{NAME}\n' | sort -k1,1n Pacotes RPM instalados com o tamanho em bytes, ordenados por essa coluna
dpkg-query -W -f='${Installed-Size;10}\t${Package}\n' | sort -k1,1n A mesma listagem para pacotes Debian: tamanho instalado e nome do pacote

Comando Descrição
groupadd group_name Criar um grupo (somente root)
groupdel group_name Excluir um grupo (somente root)
groupmod -n new_group_name old_group_name Renomear um grupo (somente root)
useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 Criar uma conta com comentário, grupo principal, diretório pessoal e shell (somente root)
useradd user1 Criar uma conta com os padrões de /etc/default/useradd (somente root)
userdel -r user1 Excluir uma conta junto com seu diretório pessoal (somente root)
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 Alterar comentário, grupo, diretório pessoal e shell de uma conta existente (somente root)
passwd Alterar a sua própria senha
passwd user1 Alterar a senha de outra conta (somente root)
chage -E 2030-12-31 user1 Dar a uma conta uma data de expiração, a partir da qual o login é recusado (somente root)
pwck Verificar se /etc/passwd e /etc/shadow têm entradas inconsistentes (somente root)
grpck Verificar se /etc/group e /etc/gshadow têm o mesmo tipo de problema (somente root)
newgrp group_name Abrir um novo shell no qual outro grupo é o grupo principal efetivo

Comando Descrição
ls -lh Listagem longa com tamanhos em K, M e G
ls /tmp | pr -T5 -W$COLUMNS Imprimir a listagem em cinco colunas ajustadas à largura do terminal
chmod ugo+rwx directory1 Dar permissão de leitura, escrita e execução a dono, grupo e outros em um diretório
chmod go-rwx directory1 Retirar todas as permissões do grupo e dos outros
chown user1 file1 Alterar o dono de um arquivo (somente root)
chown -R user1 directory1 Alterar o dono de um diretório e de tudo dentro dele (somente root)
chgrp group1 file1 Alterar o grupo de um arquivo
chown user1:group1 file1 Alterar dono e grupo em um único comando (somente root)
find / -perm -u+s Encontrar todos os binários com setuid do sistema
chmod u+s /bin/file1 Ativar o bit setuid para que o arquivo rode com os direitos do seu dono (somente root)
chmod u-s /bin/file1 Remover o bit setuid novamente
chmod g+s /home/public Ativar o bit setgid: novas entradas dentro do diretório herdam o grupo dele
chmod g-s /home/public Remover o bit setgid
chmod o+t /home/public Ativar o bit sticky para que, em um diretório compartilhado, cada usuário só apague os próprios arquivos
chmod o-t /home/public Remover o bit sticky

Comando Descrição
chattr +a file1 Somente anexar: o arquivo pode crescer, mas não ser reescrito nem apagado (somente root)
chattr +c file1 Guardar o arquivo comprimido no disco (ext4, somente root)
chattr +d file1 Deixar o arquivo fora dos backups do dump (somente root)
chattr +i file1 Imutável: nem root consegue alterar ou apagar até remover o atributo (somente root)
chattr +s file1 Shred: sobrescrever os blocos com zeros quando o arquivo é apagado (somente root)
chattr +S file1 Escritas síncronas: cada alteração vai para o disco imediatamente (somente root)
chattr +u file1 Indelével: manter o conteúdo para que um arquivo apagado ainda possa ser recuperado (somente root)
lsattr Listar os atributos dos arquivos; sem argumento, percorre o diretório atual

Comando Descrição
bunzip2 file1.bz2 Descompactar um arquivo bzip2 e apagar o original compactado
bzip2 file1 Compactar um arquivo com bzip2, que passa a se chamar file1.bz2
gunzip file1.gz Descompactar um arquivo gzip
gzip file1 Compactar um arquivo, que passa a se chamar file1.gz
gzip -9 file1 O mesmo com compactação máxima, ao custo de velocidade
rar a file1.rar test_file Adicionar um arquivo a um arquivo RAR (o rar é shareware e falta na maioria das distribuições)
rar a file1.rar file1 file2 dir1 Adicionar vários arquivos e um diretório ao arquivo RAR
rar x file1.rar Extrair um RAR mantendo a estrutura de diretórios gravada
unrar x file1.rar A mesma extração com a ferramenta unrar
tar -cvf archive.tar file1 Criar um arquivo sem compactação e mostrar cada membro conforme é adicionado
tar -cvf archive.tar file1 file2 dir1 O mesmo arquivo com vários membros
tar -tf archive.tar Listar os membros de um arquivo sem extraí-los
tar -xvf archive.tar Extrair um arquivo no diretório atual
tar -xvf archive.tar -C /tmp Extrair em outro diretório; -C vale para tudo o que vem depois
tar -cvfj archive.tar.bz2 dir1 Criar um arquivo compactado com bzip2 (-j)
tar -jxvf archive.tar.bz2 Extrair um arquivo compactado com bzip2 (-j)
tar -cvfz archive.tar.gz dir1 Criar um arquivo compactado com gzip (-z)
tar -zxvf archive.tar.gz Extrair um arquivo compactado com gzip
zip file1.zip file1 Colocar um arquivo em um ZIP novo
zip -r file1.zip file1 file2 dir1 Adicionar dois arquivos e um diretório, entrando nele
unzip file1.zip Extrair um ZIP no diretório atual

Comando Descrição
rpm -ivh package.rpm Instalar um pacote mostrando a barra de progresso e os nomes dos arquivos
rpm -ivh --nodeps package.rpm Instalar sem resolver antes as dependências, o que quase nunca é desejado
rpm -U package.rpm Atualizar um pacote ou instalá-lo quando não existe versão anterior
rpm -F package.rpm Refresh: atualizar apenas quando já existe uma versão anterior instalada
rpm -e package_name Remover um pacote instalado; o argumento é o nome do pacote, não o arquivo
rpm -qa Listar todos os pacotes instalados com nome, versão e release
rpm -qa | grep httpd Filtrar a lista de RPM instalados por um nome de pacote
rpm -qi package_name Informações detalhadas de um pacote instalado
rpm -qg "System Environment/Daemons" Todos os pacotes que pertencem a um grupo
rpm -ql package_name Arquivos que um pacote possui
rpm -qc package_name Apenas os arquivos de configuração de um pacote
rpm -q package_name --whatrequires Pacotes que dependem desta capacidade
rpm -q package_name --whatprovides Capacidades que este pacote oferece
rpm -q package_name --scripts Scriptlets de instalação e desinstalação do pacote
rpm -q package_name --changelog Histórico de mudanças registrado nos metadados do pacote
rpm -qf /etc/httpd/conf/httpd.conf Qual pacote é dono de um arquivo
rpm -qp package.rpm -l Arquivos dentro de um pacote que não está instalado
rpm --import /media/cdrom/RPM-GPG-KEY Adicionar uma chave de assinatura ao banco RPM para poder verificar pacotes
rpm --checksig package.rpm Verificar a assinatura e o checksum de um arquivo de pacote
rpm -qa gpg-pubkey Listar as chaves guardadas no banco de dados RPM
rpm -V package_name Comparar um pacote instalado com seus metadados: tamanho, digest, permissões
rpm -Va Verificar todos os pacotes instalados; é lento e mostra cada diferença
rpm -Vp package.rpm Verificar um arquivo de pacote em vez de um pacote instalado
rpm2cpio package.rpm | cpio --extract --make-directories \*bin\* Desempacotar um RPM sem instalá-lo, pegando apenas os caminhos que casam com *bin*
rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm Instalar a partir de uma árvore de compilação, com a arquitetura preenchida pelo arch
rpmbuild --rebuild package_name.src.rpm Construir um RPM binário a partir de um RPM de código-fonte

Comando Descrição
yum install package_name Instalar um pacote dos repositórios junto com suas dependências
yum localinstall package_name.rpm Instalar um arquivo RPM local e buscar as dependências nos repositórios
yum update package_name.rpm Atualizar um pacote a partir de um arquivo local
yum update package_name Atualizar um pacote instalado para a versão mais recente
yum remove package_name Remover um pacote e os pacotes que dependem dele
yum list Listar pacotes instalados e disponíveis
yum search package_name Pesquisar nos repositórios por nome ou palavra-chave
yum clean packages Apagar os arquivos de pacote baixados do cache
yum clean headers Apagar os cabeçalhos de metadados de repositório guardados em cache
yum clean all Esvaziar todo o cache, metadados inclusive

Comando Descrição
dpkg -i package.deb Instalar um arquivo .deb sem consultar os repositórios
dpkg -r package_name Remover um pacote instalado mas manter seus arquivos de configuração
dpkg -l Listar os pacotes instalados com suas versões
dpkg -l | grep httpd Filtrar a lista de pacotes Debian instalados por um nome
dpkg -s package_name Status e metadados de um pacote instalado
dpkg -L package_name Arquivos que um pacote instalou
dpkg --contents package.deb Arquivos dentro de um .deb que não está instalado
dpkg -S /bin/ping Qual pacote instalou um caminho específico

Comando Descrição
apt-get install package_name Instalar um pacote dos repositórios Debian com suas dependências
apt-cdrom add Registrar um CD ou DVD como fonte de pacotes e instalar a partir dele
apt-get update Atualizar o índice de pacotes de todas as fontes configuradas
apt-get upgrade Instalar as atualizações disponíveis sem remover nada
apt-get remove package_name Remover um pacote dos repositórios Debian mas deixar seus arquivos de configuração
apt-get check Verificar se o banco de dados de pacotes está consistente
apt-get clean Apagar de /var/cache/apt os arquivos .deb baixados
apt-cache search searched-package Pesquisar no índice de pacotes por nome ou descrição

Comando Descrição
cat file1 Imprimir um arquivo inteiro na saída padrão
tac file1 Imprimir o arquivo com a ordem das linhas invertida
more file1 Passar as páginas de um arquivo só para frente
less file1 Percorrer um arquivo nos dois sentidos e pesquisar dentro dele
head -2 file1 Primeiras duas linhas de um arquivo; o padrão é dez
tail -2 file1 Últimas duas linhas de um arquivo
tail -f /var/log/messages Acompanhar um log que cresce e imprimir as linhas novas conforme são gravadas

Comando Descrição
cat file1 | sed 's/old/new/g' > result.txt Passar um arquivo por outro programa e gravar o resultado em um arquivo novo
cat file1 | sed 's/old/new/g' >> result.txt O mesmo, anexando o resultado em vez de substituir o arquivo
grep Aug /var/log/messages Linhas que contêm o texto
grep ^Aug /var/log/messages Linhas que começam com o texto, ancorado no início
grep [0-9] /var/log/messages Linhas que contêm pelo menos um dígito
grep Aug -R /var/log/* Pesquisar o texto recursivamente abaixo dos caminhos indicados
sed 's/string1/string2/g' example.txt Substituir todas as ocorrências de uma string por outra
sed '/^$/d' example.txt Apagar as linhas vazias
sed '/ *#/d; /^$/d' example.txt Apagar as linhas de comentário e as linhas vazias que sobram
echo 'example' | tr '[:lower:]' '[:upper:]' Converter o texto para maiúsculas com as classes de caracteres do tr
sed -e '1d' result.txt Apagar a primeira linha e imprimir o resto
sed -n '/string1/p' example.txt Imprimir apenas as linhas que casam; -n suprime a saída padrão
sed -e 's/ *$//' example.txt Remover os espaços no fim de cada linha
sed -e 's/string1//g' example.txt Apagar todas as ocorrências de uma palavra e manter o resto da linha
sed -n '1,5p;5q' example.txt Imprimir as cinco primeiras linhas e parar de ler na linha 5
sed -n '5p;5q' example.txt Imprimir apenas a linha 5 e sair
sed -e 's/00*/0/g' example.txt Transformar sequências de zeros em um único zero
cat -n file1 Numerar cada linha ao imprimi-la
cat example.txt | awk 'NR%2==1' Imprimir as linhas de numeração ímpar
echo a b c | awk '{print $1}' Imprimir o primeiro campo separado por espaços
echo a b c | awk '{print $1,$3}' Imprimir o primeiro e o terceiro campo
paste file1 file2 Juntar dois arquivos linha a linha, separados por tabulação
paste -d '+' file1 file2 O mesmo com + como separador
sort file1 file2 Ordenar os dois arquivos juntos em ordem crescente
sort file1 file2 | uniq Descartar as linhas duplicadas adjacentes; a entrada precisa estar ordenada antes
sort file1 file2 | uniq -u Imprimir apenas as linhas que aparecem exatamente uma vez
sort file1 file2 | uniq -d Imprimir apenas as linhas que aparecem mais de uma vez
comm -1 file1 file2 Ocultar as linhas que existem só no file1 e manter as outras duas colunas
comm -2 file1 file2 Ocultar as linhas que existem só no file2
comm -3 file1 file2 Imprimir apenas as linhas que diferem entre os dois arquivos

Comando Descrição
dos2unix filedos.txt fileunix.txt Converter finais de linha CRLF em LF e gravar um arquivo novo
unix2dos fileunix.txt filedos.txt Converter finais de linha LF em CRLF
recode ..HTML < page.txt > page.html Converter texto simples em entidades HTML com os pares de conjuntos de caracteres do recode
recode -l | more Listar os conjuntos de caracteres e conversões que esta compilação do recode suporta

Comando Descrição
badblocks -v /dev/hda1 Ler todos os blocos da partição e relatar os que falham, com progresso
fsck /dev/hda1 Verificar o sistema de arquivos conforme o tipo; a partição não pode estar montada
fsck.ext2 /dev/hda1 Executar o verificador de ext2 diretamente, sem passar pelo fsck
e2fsck /dev/hda1 Verificar um sistema de arquivos ext2, ext3 ou ext4
e2fsck -p /dev/hda1 Reparar automaticamente tudo o que dá para corrigir sem perguntar (preen)
fsck.ext3 /dev/hda1 A variante ext3 do mesmo verificador
fsck.vfat /dev/hda1 Verificar um sistema de arquivos FAT com o verificador do dosfstools
fsck.msdos /dev/hda1 Outro nome para o verificador de FAT do MS-DOS
dosfsck /dev/hda1 Reparar um sistema de arquivos FAT; -a responde sim a todas as perguntas

Comando Descrição
mkfs /dev/hda1 Criar um sistema de arquivos em uma partição, destruindo o que havia ali
mke2fs /dev/hda1 Criar um sistema de arquivos ext2
mke2fs -j /dev/hda1 Criar um sistema de arquivos ext3 adicionando um journal
mkfs -t vfat -F 32 /dev/hda1 Criar um sistema de arquivos FAT32 com a ferramenta do dosfstools
fdformat -n /dev/fd0 Formatação de baixo nível de um disquete, sem a passagem de verificação
mkswap /dev/hda3 Preparar uma partição como área de swap

Comando Descrição
mkswap /dev/hda3 Preparar uma partição como área de swap
swapon /dev/hda3 Começar a usar uma partição de swap
swapon /dev/hda2 /dev/hdb3 Ativar duas áreas de swap em um único comando

Comando Descrição
dump -0aj -f /tmp/home0.bak /home Dump completo (nível 0) de /home em um arquivo compactado
dump -1aj -f /tmp/home0.bak /home Dump incremental: apenas o que mudou desde a execução de nível 0
restore -if /tmp/home0.bak Percorrer um dump de forma interativa e escolher os arquivos a restaurar
rsync -rogpav --delete /home /tmp Espelhar uma árvore em /tmp preservando links, donos, grupos, permissões e datas; --delete remove os arquivos que desapareceram
rsync -rogpav -e ssh --delete /home ip_address:/tmp O mesmo espelhamento por uma conexão SSH
rsync -az -e ssh --delete ip_addr:/home/public /home/local Trazer uma árvore remota, compactada durante o transporte
rsync -az -e ssh --delete /home/local ip_addr:/home/public Enviar uma árvore local para o host remoto
dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' Copiar um disco inteiro por gzip e SSH, megabyte a megabyte
dd if=/dev/sda of=/tmp/file1 Copiar um disco para um arquivo em outro sistema de arquivos
tar -Puf backup.tar /home/user Anexar a um arquivo já existente e manter a barra inicial do caminho
( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' Copiar uma árvore para um host remoto por um pipe; -p restaura as permissões
( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' A mesma cópia partindo de um caminho absoluto
tar cf - . | (cd /tmp/backup ; tar xf - ) Copiar a árvore atual para outro diretório na mesma máquina
find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents Copiar uma lista de arquivos e recriar a estrutura de diretórios no destino
find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 Arquivar os arquivos encontrados pelo find e compactar o fluxo na hora
dd if=/dev/hda of=/dev/fd0 bs=512 count=1 Copiar o registro mestre de inicialização, 512 bytes por vez
dd if=/dev/fd0 of=/dev/hda bs=512 count=1 Gravar esse registro de volta; com o destino errado um disco é destruído

Comando Descrição
cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force Apagar um disco regravável na gravadora e ejetá-lo (cdrecord do cdrtools)
dd if=/dev/cdrom of=cd.iso Copiar um disco óptico para um arquivo de imagem ISO
dd if=/dev/cdrom | gzip > cd_iso.gz A mesma imagem, compactada enquanto é gravada
mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd Criar uma imagem ISO a partir de um diretório, com nomes Joliet e Rock Ridge
cdrecord -v dev=/dev/cdrom cd.iso Gravar uma imagem ISO no disco
gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom - Gravar uma imagem compactada direto do pipe
mount -o loop cd.iso /mnt/iso Ler a imagem de volta como um diretório
cd-paranoia -B Extrair as faixas de áudio de um CD para arquivos WAV
cd-paranoia -- "-3" Extrair a faixa 3; o -- impede que o traço inicial seja lido como opção
cdrecord --scanbus Listar os endereços SCSI/ATA que a gravadora alcança
dd if=/dev/hdc | md5sum Calcular o checksum do conteúdo bruto de uma unidade óptica

Comando Descrição
dhclient eth0 Pedir a um servidor DHCP um endereço e uma concessão para a interface (somente root)
ethtool eth0 Velocidade do link, modo duplex e detalhes do driver de uma interface de rede
host www.example.com Resolver um nome para endereços com o utilitário host do BIND
hostname Mostrar o nome desta máquina
ifconfig eth0 Endereço, máscara e contadores de uma interface (net-tools, obsoleto em favor do ip)
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 Definir um endereço estático que dura até a próxima reinicialização (somente root)
ifconfig eth0 promisc Colocar a interface em modo promíscuo para que ela guarde todos os quadros que vê (somente root)
ifdown eth0 Derrubar uma interface com os scripts do ifupdown (somente root)
ifup eth0 Subi-la de novo e aplicar a configuração de /etc/network/interfaces (somente root)
ip link show Estado de todos os dispositivos de rede; o substituto moderno do ifconfig
iwconfig eth1 Configurações sem fio de uma interface: ESSID, modo e frequência (wireless-tools)
iwlist scan Listar os pontos de acesso que a placa sem fio consegue ver (somente root)
mii-tool eth0 Estado do link de uma interface com fio conforme o driver informa
netstat -tup Conexões TCP e UDP ativas com o processo dono de cada socket
netstat -tulp Apenas os sockets que aguardam conexões, com o processo que os mantém
netstat -rn Tabela de rotas do kernel com endereços numéricos e sem resolver nomes
nslookup www.example.com Consultar um servidor de nomes por um nome ou um endereço; o dig é o substituto moderno
route -n Tabela de rotas sem resolução de nomes (net-tools)
route add default gw 192.168.1.1 Definir o gateway padrão até a próxima inicialização (somente root)
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 Adicionar uma rota estática para uma rede (somente root)
route del default gw 192.168.1.1 Remover essa rota padrão novamente (somente root)
echo 1 > /proc/sys/net/ipv4/ip_forward Ativar o encaminhamento IPv4 para a máquina poder rotear entre interfaces (somente root)
tcpdump tcp port 80 Capturar o tráfego HTTP que passa no cabo (somente root)
whois www.example.com Dados de registro de um domínio na base WHOIS

Comando Descrição
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share Montar um compartilhamento do Windows; os kernels atuais usam -t cifs e um arquivo de credenciais no lugar do smbfs
nbtscan 192.168.1.0/24 Escanear uma sub-rede em busca de nomes NetBIOS e das máquinas atrás deles
nmblookup -A 192.168.1.10 Pedir a um host os seus nomes NetBIOS; a resposta do Samba ao nbtstat
smbclient -L 192.168.1.10 Listar os compartilhamentos que um host Windows oferece
smbget -Rr smb://192.168.1.10/share Baixar um compartilhamento de forma recursiva com o cliente estilo wget do Samba

Comando Descrição
iptables -t filter -L Listar as regras da tabela filter
iptables -t nat -L Listar as regras da tabela nat, que cuida da tradução de endereços
iptables -t filter -F Apagar todas as regras da tabela filter
iptables -t nat -F Apagar todas as regras da tabela nat
iptables -t filter -X Apagar as cadeias definidas pelo usuário que não são mais referenciadas
iptables -t filter -A INPUT -p tcp --dport telnet -j ACCEPT Adicionar uma regra que aceita o Telnet de entrada na porta 23
iptables -t filter -A OUTPUT -p tcp --dport telnet -j DROP Descartar o tráfego Telnet de saída
iptables -t filter -A FORWARD -p tcp --dport pop3 -j ACCEPT Deixar passar o tráfego POP3 encaminhado
iptables -t filter -A INPUT -j LOG --log-prefix "INPUT: " Registrar cada pacote de entrada com um prefixo que dá para pesquisar
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE Reescrever o endereço de origem dos pacotes de saída, que é como funciona um gateway NAT simples
iptables -t nat -A POSTROUTING -d 192.168.0.1 -p tcp -m tcp --dport 22 -j DNAT --to-destination 10.0.0.2:22 Enviar o SSH para um host interno reescrevendo o endereço de destino

Comando Descrição
free -m Uso de memória e swap em mebibytes
kill -9 1234 SIGKILL: o processo termina de imediato e não consegue limpar nada (1234 representa o PID)
kill -1 1234 SIGHUP: a maioria dos daemons relê a sua configuração (1234 representa o PID)
last reboot Histórico de acessos filtrado por reinicializações, mostrando quando a máquina reiniciou
lsmod Listar os módulos do kernel carregados no momento
lsof -p 1234 Todos os arquivos, sockets e dispositivos que um processo mantém abertos
lsof /home/user1 Quais processos têm arquivos abertos abaixo de um caminho
ps -eafw Todos os processos com a linha de comando completa em uma listagem larga
ps -e -o pid,args --forest Árvore de processos mostrando apenas o PID e o comando
pstress Ferramenta de teste de carga para PostgreSQL; não faz parte de uma distribuição padrão
smartctl -A /dev/hda Atributos S.M.A.R.T. de um disco, em que setores realocados indicam falha iminente
smartctl -i /dev/hda Modelo, firmware, número de série e estado de saúde de um disco
strace -c ls >/dev/null Contar as chamadas de sistema que um comando faz e imprimir um resumo
strace -f -e open ls >/dev/null Rastrear as chamadas open() de um comando e dos processos filhos que ele inicia
tail /var/log/dmesg Últimas linhas do log do buffer circular do kernel
tail /var/log/messages Últimas linhas do log geral do sistema
top Lista ao vivo de processos ordenada pelo uso de CPU, atualizada enquanto você observa
watch -n 1 'cat /proc/interrupts' Executar um comando a cada segundo e manter a saída na tela

Comando Descrição
alias hh='history' Dar um nome curto a um comando dentro do shell atual
apropos keyword Pesquisar uma palavra-chave nos nomes e descrições das páginas de manual
chsh Alterar o seu shell de login de forma interativa
chsh --list-shells Mostrar as shells listadas em /etc/shells
gpg -c file1 Criptografar um arquivo com uma frase secreta em file1.gpg, usando cifra simétrica
gpg file1.gpg Descriptografar esse arquivo de novo e pedir a frase secreta

Como usar as tabelas de comandos

Esta página reúne 347 exemplos de comandos em 27 grupos que podem ser recolhidos, de informações do sistema e arquivos até redes, pacotes, backups e mídias ópticas. Use Ctrl / Cmd + F ou clique no título de um grupo para recolher a parte que precisa; a célula do comando mantém a sintaxe do shell como você digitaria, e a nota ao lado diz o que aquele utilitário ou aquela opção faz.

As notas foram escritas a partir da página de manual de cada utilitário, então descrevem a ferramenta em vez de repetir uma frase genérica: uname -r mostra a versão do kernel, e2fsck -p repara o que pode ser corrigido sem perguntar e iptables -t nat -F esvazia a tabela de tradução de endereços. O VoriTools não executa nenhum desses comandos: a página é um documento estático, então lê-la não pode alterar o seu sistema.

  1. Encontre o grupo que precisa: informações do sistema e hardware, arquivos e diretórios, busca de arquivos, montagem, uso de disco, usuários e grupos, permissões, atributos estendidos, arquivos compactados, pacotes RPM / YUM / Debian / APT, visualização de arquivos, processamento de texto, codificações de caracteres, verificação de sistemas de arquivos, criação de sistemas de arquivos, swap, backup e restauração, mídias ópticas, Ethernet e Wi-Fi, SMB, iptables, monitoramento e diagnóstico, e outros utilitários.
  2. Clique no título de um grupo para recolher ou expandir, ou use Ctrl / Cmd + F para ir direto a um comando como tar -xvf ou a uma palavra dentro de uma nota.
  3. Leia a nota antes de copiar. Ela indica a opção em que o exemplo se apoia (-j para bzip2, -C para extrair em outro lugar, -perm para procurar arquivos setuid) e marca as linhas que precisam de root.
  4. Confira os caminhos, os nomes de dispositivo e as suposições de distribuição do exemplo. /dev/hda e /dev/hdc vêm da nomenclatura IDE antiga, então um sistema moderno espera /dev/sda ou /dev/sr0; o yum é redirecionado para o dnf no RHEL 8 e posteriores, e ifconfig, route e netstat pertencem ao net-tools, substituído por ip, ss e ip route.
  5. Depois execute o comando no seu próprio shell, onde você vê o efeito. Aqui nada é executado por você e nenhuma requisição sai do navegador enquanto você lê.

O que as notas dizem e o que esta página não faz

Como cada linha foi escrita

A célula do comando traz um exemplo que funciona: mkdir -p /tmp/dir1/dir2 cria os diretórios pais e não falha se o caminho já existe; tar -xvf archive.tar -C /tmp extrai em outro diretório porque -C vale para tudo o que vem depois; find / -xdev -name \*.rpm fica dentro de um único sistema de arquivos. Onde a lista original tinha um erro de digitação ou uma opção impossível — iptables -t nae, e2fsck -j, gpg -c filel, mkisofs /dev/cdrom, netstat -tup1, /proc/sys/net/ipv4/ip_foward — o exemplo foi corrigido e a nota descreve a forma corrigida.

O que foi verificado e como

Cada utilitário citado na página foi verificado no servidor Linux que também atende o VoriTools (Alibaba Cloud Linux 3): command -v para o binário, man -w para a página de manual. 106 dos 141 utilitários têm página de manual nesse host e as notas seguem o texto da sua linha NAME e da lista de opções. 32 não estão instalados (apt-get, dpkg, rar, smartctl, tree, whois, rsync, smbclient e outros), então suas notas descrevem a ferramenta original, não uma execução local.

As opções mostradas são exemplos, não a lista completa. Use --help ou abra a página de manual para ver o restante.

Linhas que mexem com dados

Linhas como rm -rf dir1, dd if=/dev/fd0 of=/dev/hda, mkfs /dev/hda1, iptables -F e shutdown -h now estão documentadas, nunca são executadas aqui. A nota marca as que precisam de root, e vale o mesmo cuidado que você teria no terminal: confirme antes o dispositivo, o caminho e o host de destino. Um nome de dispositivo errado no dd ou no mkfs destrói dados sem volta.

Ferramentas recentes: