🐧 Linha de Comando Linux
Comandos básicos e avançados para navegação, arquivos, processos, rede, monitoramento, pacotes e automação. Adequado para fluxos de trabalho DevOps.
🔹 Comandos básicos
| Comando | Exemplo | Descrição | 
|---|---|---|
| cat | Mostrar conteúdo de arquivo ou concatenar múltiplos arquivos | |
| cat file.txt | Ver conteúdo de arquivo | |
| cat file1 file2 | Concatenar e exibir dois arquivos | |
| cat file1 file2 > merged.txt | Concatenar arquivos e salvar em um novo arquivo | |
| cd | Alterar o diretório de trabalho atual | |
| cd /etc | Ir para o caminho absoluto  | |
| cd ~ | Ir para o diretório pessoal | |
| cd .. | Subir um nível | |
| cd - | Voltar ao diretório anterior | |
| clear | Limpar a tela do terminal | |
| cp | Copiar arquivos e diretórios | |
| cp file1.txt file2.txt | Copiar um arquivo com um novo nome | |
| cp -r dir1 dir2 | Copiar um diretório recursivamente | |
| cp -i file.txt /tmp/ | Copiar com confirmação antes de sobrescrever | |
| echo | Imprimir uma string ou variável de ambiente | |
| echo "Hello, World!" | Imprimir uma string simples | |
| echo $HOME | Mostrar o caminho do diretório pessoal | |
| echo -e "1\t2\n3" | Interpretar sequências de escape ( ) | |
| history | Exibir o histórico de comandos | |
| id | Mostrar UID, GID e grupos do usuário atual | |
| ls | Listar arquivos e diretórios | |
| ls -l | Listagem detalhada com permissões e donos | |
| ls -a | Mostrar arquivos ocultos | |
| ls -lh | Tamanhos legíveis para humanos | |
| mkdir | Criar diretórios | |
| mkdir folder | Criar um único diretório | |
| mkdir -p a/b/c | Criar diretórios aninhados | |
| mkdir dir{1,2,3} | Criar múltiplos diretórios de uma vez | |
| mv | Mover ou renomear arquivos/diretórios | |
| mv oldname.txt newname.txt | Renomear um arquivo | |
| mv file.txt /path/to/dir/ | Mover um arquivo para outro diretório | |
| mv *.txt archive/ | Mover todos os arquivos  | |
| pwd | Exibir o diretório de trabalho atual | |
| pwd -P | Mostrar o caminho físico (sem links simbólicos) | |
| cd /tmp && pwd | Mostrar o caminho após mudar para  | |
| rm | Remover arquivos ou diretórios | |
| rm file.txt | Excluir um arquivo | |
| rm -i file.txt | Excluir um arquivo com confirmação | |
| rm -r folder/ | Excluir um diretório recursivamente | |
| rm -rf folder/ | Forçar exclusão sem confirmação | |
| rmdir | Remover um diretório vazio | |
| rmdir emptydir | Remover o diretório  | |
| touch | Criar arquivos vazios ou atualizar o horário de modificação | |
| touch newfile.txt | Criar um novo arquivo vazio se não existir | |
| touch a b c | Criar múltiplos arquivos de uma vez | |
| touch -c file.txt | Atualizar horário sem criar arquivo se ausente | |
| whereis | Localizar o binário, código-fonte e man pages de um comando | |
| whereis ls | Encontrar localizações para  | |
| whereis bash | Mostrar caminhos para o binário e documentação do Bash | |
| whereis -b bash | Buscar apenas o binário | |
| which | Mostrar o caminho do executável do comando | |
| which python3 | Caminho para  | |
| which grep | Caminho para  | |
| which --skip-alias ls | Ignorar aliases na busca | |
| whoami | Exibir o nome efetivo do usuário | 
🔸 Nível intermediário
| Comando | Exemplo | Descrição | 
|---|---|---|
| chmod | Alterar permissões de arquivo ou diretório | |
| chmod 755 file | Definir permissões com notação octal (ex.: 755) | |
| chmod +x script.sh | Adicionar permissão de execução a um script | |
| chmod -R 644 dir/ | Definir permissões recursivamente em um diretório | |
| chown | Alterar dono e grupo de um arquivo | |
| chown user file | Alterar o dono de um arquivo | |
| chown user:group file | Alterar dono e grupo | |
| chown -R user:group dir/ | Alterar dono e grupo recursivamente | |
| curl | Transferir dados de/para um servidor (HTTP, HTTPS, etc.) | |
| curl -I https://example.com | Enviar um pedido HEAD (apenas cabeçalhos) | |
| curl -O https://example.com/file.txt | Baixar um arquivo e manter seu nome | |
| curl -d "a=1&b=2" -X POST URL | Enviar um POST com dados de formulário | |
| df | Relatar uso de espaço em disco do sistema de arquivos | |
| df -h | Tamanhos legíveis para humanos | |
| df /home | Uso de um ponto de montagem específico | |
| df -T | Mostrar tipos de sistemas de arquivos | |
| diff | Comparar arquivos ou diretórios | |
| diff file1 file2 | Comparar dois arquivos | |
| diff -u old.c new.c | Diff unificado (estilo patch) | |
| diff -r dir1 dir2 | Comparação recursiva de diretórios | |
| du | Estimar uso de espaço de arquivos e diretórios | |
| du -sh * | Mostrar tamanho dos itens no diretório atual | |
| du -h file.txt | Mostrar tamanho de um único arquivo | |
| du -sh --max-depth=1 /var | Resumir tamanhos dos subdiretórios de nível superior | |
| find | Procurar arquivos/diretórios por nome, tamanho, tempo, etc. | |
| find . -name "*.log" | Encontrar todos os arquivos  | |
| find / -type f -size +100M | Encontrar arquivos maiores que 100 MB | |
| find . -mtime -1 | Arquivos modificados no último dia | |
| free | Exibir quantidade de memória livre e usada | |
| free -h | Unidades de memória legíveis para humanos | |
| free -m | Mostrar valores em MB | |
| watch -n 2 free -h | Atualizar a saída a cada 2 segundos | |
| grep | Buscar texto usando padrões (expressões regulares) | |
| grep "error" logfile | Encontrar linhas contendo  | |
| grep -r "error" /var/log | Busca recursiva em um diretório | |
| grep -i "fail" file | Busca sem diferenciar maiúsculas/minúsculas | |
| head | Exibir as primeiras linhas de um arquivo | |
| head -n 10 file | Primeiras 10 linhas | |
| head -n 20 file.txt | Primeiras 20 linhas | |
| head -c 100 file | Primeiros 100 bytes | |
| hostname | Mostrar ou definir o nome do host do sistema | |
| hostname newname | Definir temporariamente o hostname até reiniciar | |
| hostname -I | Mostrar endereços IP | |
| kill | Enviar sinais a processos | |
| kill -9 1234 | Forçar encerramento de um processo por PID | |
| kill -TERM 1234 | Encerrar graciosamente com SIGTERM | |
| pkill -f python | Matar processos correspondentes a um padrão | |
| ping | Verificar conectividade de rede usando pacotes ICMP | |
| ping 8.8.8.8 | Ping em um endereço | |
| ping -c 4 ya.ru | Enviar 4 pacotes | |
| ping -i 2 1.1.1.1 | Definir intervalo de 2 segundos | |
| ps | Exibir status dos processos | |
| ps aux | Listar todos os processos | |
| ps -ef | grep nginx | Filtrar por nome usando  | |
| ps -u $USER | Processos do usuário atual | |
| rsync | Transferência rápida e incremental de arquivos | |
| rsync -av src/ dst/ | Sincronizar diretórios localmente | |
| rsync -avz user@host:/src /dst | Sincronizar com host remoto via SSH | |
| rsync --delete src/ dst/ | Excluir arquivos no destino ausentes na origem | |
| scp | Cópia segura (programa de cópia de arquivos remotos) | |
| scp file user@host:/path | Copiar um arquivo para um host remoto | |
| scp user@host:/file.txt . | Copiar um arquivo de um host remoto | |
| scp -r dir user@host:/path | Copiar recursivamente um diretório | |
| sort | Ordenar linhas de texto | |
| sort file.txt | Ordenação alfabética | |
| sort -r file.txt | Ordem reversa | |
| sort -n numbers.txt | Ordenação numérica | |
| tail | Exibir a última parte de arquivos; seguir mudanças | |
| tail -f logfile.log | Seguir um log em tempo real | |
| tail -n 20 file.txt | Mostrar as últimas 20 linhas | |
| tail -c 100 file.txt | Mostrar os últimos 100 bytes | |
| tar | Criar, listar ou extrair arquivos tar | |
| tar -czf archive.tgz dir/ | Criar um arquivo  | |
| tar -xzf archive.tgz | Extrair um arquivo  | |
| tar -tf archive.tgz | Listar conteúdo do arquivo | |
| tee | Ler da entrada padrão e escrever na saída padrão e em arquivos | |
| echo "test" | tee out.txt | Gravar saída em  | |
| ls | tee list.txt | Salvar saída de  | |
| command | tee -a log.txt | Anexar saída ao final de  | |
| top | Exibir tarefas do Linux (visualizador interativo de processos) | |
| top | Iniciar top | |
| htop | Visualizador alternativo interativo (htop) | |
| top -o %MEM | Ordenar por uso de memória | |
| uptime | Mostrar há quanto tempo o sistema está em execução | |
| uptime -p | Tempo de atividade em formato amigável | |
| uptime -s | Hora de inicialização do sistema | |
| wget | Baixador de rede não interativo | |
| wget https://site.com/file.zip | Baixar um arquivo por URL | |
| wget -c file.zip | Retomar um download interrompido | |
| wget -O saved.txt URL | Salvar com um nome de arquivo diferente | |
| wc | Exibir contagem de linhas, palavras e bytes em arquivos | |
| wc -l file | Contar linhas | |
| wc -w file | Contar palavras | |
| wc -m file | Contar caracteres | |
| uniq | Relatar ou filtrar linhas repetidas (duplicatas adjacentes) | |
| uniq file.txt | Remover duplicatas adjacentes | |
| sort file | uniq | Remover duplicatas após ordenação | |
| sort file | uniq -c | Contar ocorrências de cada linha | |
| yes | Exibir uma string repetidamente até ser interrompido; útil para scripts | |
| yes "y" | command | Responder sempre “y” a prompts | |
| yes | rm -i * | Auto-confirmar exclusões interativas | |
| yes no | command | Responder “não” a prompts | 
🔧 Comandos avançados
| Comando | Exemplo | Descrição | 
|---|---|---|
| at | Agendar a execução única de um comando em um horário definido | |
| at now + 1 minute | Executar um comando daqui a um minuto | |
| atq | Listar tarefas pendentes | |
| atrm | Remover uma tarefa pendente | |
| awk | Linguagem de varredura e processamento de padrões | |
| awk '{print $1}' file | Imprimir a primeira coluna | |
| ps aux | awk '$3 > 50' | Filtrar processos pelo uso de CPU | |
| cat file.txt | awk '{print $2}' | Imprimir o segundo campo de cada linha | |
| awk '/error/ {print $0}' logfile | Imprimir linhas que correspondem a um padrão | |
| crontab | Instalar, listar ou remover tarefas cron por usuário | |
| crontab -e | Editar o crontab do usuário atual | |
| crontab -l | Listar tarefas do cron | |
| crontab -r | Remover o crontab do usuário atual | |
| cut | Remover ou selecionar seções de cada linha de arquivos | |
| cut -d':' -f1 /etc/passwd | Imprimir nomes de usuário de  | |
| echo "a:b:c" | cut -d':' -f2 | Cortar o segundo campo usando ‘:’ como delimitador | |
| cut -c1-5 filename | Selecionar caracteres por posição | |
| df | Relatar uso de espaço em disco do sistema de arquivos | |
| df -h | Tamanhos legíveis para humanos | |
| df -T | Mostrar tipos de sistemas de arquivos | |
| df /home | Uso do diretório pessoal | |
| env | Executar um comando em ambiente modificado ou imprimir variáveis | |
| env | grep PATH | Mostrar entradas do PATH | |
| env -i bash | Iniciar um shell limpo com ambiente vazio | |
| export | Definir variáveis de ambiente para o shell/sessão atual | |
| export VAR=value | Definir uma variável para este shell | |
| export PATH=$PATH:/new/path | Adicionar um diretório ao PATH | |
| export -p | Listar variáveis exportadas | |
| free | Exibir uso da memória | |
| free -m | Mostrar em MB | |
| free -h | Unidades legíveis para humanos | |
| free -s 5 | Amostragem a cada 5 segundos | |
| hostnamectl | Consultar e alterar o nome do host do sistema e configurações relacionadas | |
| hostnamectl status | Mostrar status do host | |
| hostnamectl set-hostname newname | Definir um novo nome de host estático | |
| ifconfig/ip | Ferramentas IP para visualizar/gerenciar interfaces e endereços | |
| ifconfig | Mostrar interfaces de rede (legado) | |
| ip a | Mostrar endereços com  | |
| ip link set eth0 up | Ativar uma interface | |
| iostat | Relatar estatísticas de CPU e I/O | |
| iostat -x 2 | Estatísticas detalhadas a cada 2 segundos | |
| iostat -d 5 3 | Estatísticas de dispositivos (intervalo 5s, 3 relatórios) | |
| iptables | Ferramenta de administração para filtragem de pacotes IPv4 e NAT | |
| iptables -L | Listar regras atuais | |
| iptables -A INPUT -p tcp --dport 22 -j ACCEPT | Permitir conexões SSH na porta 22 | |
| iptables -F | Limpar todas as regras | |
| journalctl | Consultar o journal do systemd | |
| journalctl -xe | Mostrar erros recentes com contexto | |
| journalctl -u nginx.service | Mostrar logs de um serviço | |
| journalctl --since "2 hours ago" | Mostrar logs desde um tempo relativo | |
| ln | Criar links entre arquivos | |
| ln -s target link | Criar um link simbólico | |
| ln file.txt backup.txt | Criar um link físico | |
| ln -sf target link | Recriar forçadamente um link simbólico | |
| sed | Editor de fluxo para filtrar e transformar texto | |
| sed 's/old/new/g' file | Substituir uma string globalmente | |
| sed -n '1,5p' file | Imprimir apenas um intervalo de linhas | |
| sed '/pattern/d' file | Excluir linhas correspondentes | |
| systemctl | Controlar o sistema e gerenciador de serviços systemd | |
| systemctl status nginx | Mostrar status de um serviço | |
| systemctl start nginx | Iniciar um serviço | |
| systemctl enable nginx | Habilitar um serviço na inicialização | |
| tr | Traduzir ou excluir caracteres | |
| tr a-z A-Z | Converter minúsculas em maiúsculas | |
| echo "hello" | tr 'h' 'H' | Substituir um caractere | |
| echo "abc123" | tr -d '0-9' | Excluir dígitos | |
| type | Descrever como um nome seria interpretado no shell | |
| type ls | Mostrar como  | |
| type cd | Mostrar como  | |
| type python3 | Mostrar como  | |
| ulimit | Obter ou definir limites de recursos de processos de usuário | |
| ulimit -n | Mostrar máximo de arquivos abertos | |
| ulimit -c unlimited | Habilitar dumps de memória | |
| ulimit -u 4096 | Limitar o número de processos do usuário | |
| uptime | Mostrar tempo de atividade do sistema e carga média | |
| uptime -p | Tempo de atividade em formato amigável | |
| uptime -s | Mostrar horário de inicialização | |
| xargs | Construir e executar linhas de comando a partir da entrada padrão | |
| xargs -n 1 echo | Exibir cada argumento em uma linha separada | |
| echo "a b c" | xargs -n 1 | Dividir palavras em argumentos separados | |
| find . -name '*.txt' | xargs rm | Encontrar arquivos e removê-los com xargs | 
🌐 Comandos de rede
| Comando | Exemplo | Descrição | 
|---|---|---|
| curl | Transferir dados para/de servidores | |
| curl -X POST -d "a=1" URL | Requisição POST com dados de formulário | |
| curl -I URL | Buscar apenas cabeçalhos | |
| curl -o file.html URL | Baixar e salvar em um arquivo | |
| dig | Utilitário de consulta DNS | |
| dig openai.com | Consultar registros A | |
| dig +short openai.com | Resposta curta | |
| dig @8.8.8.8 openai.com | Usar um servidor DNS específico | |
| ftp | Cliente de protocolo de transferência de arquivos | |
| ftp host | Conectar a um servidor FTP | |
| ftp -n host | Conectar sem login automático | |
| ftp> get file.txt | Baixar um arquivo em uma sessão FTP | |
| ip address | Exibir/manipular endereços IP | |
| ip addr show eth0 | Mostrar informações de endereço para  | |
| ip addr | Listar todos os endereços | |
| ip link | Exibir/manipular dispositivos de rede | |
| ip link show | Mostrar links de rede | |
| ip link set eth0 up | Ativar uma interface | |
| ip route | Exibir/manipular a tabela de roteamento IP | |
| ip route list | Listar tabela de rotas | |
| ip route add default via 192.168.1.1 | Adicionar rota padrão | |
| nc | Conexões e escutas arbitrárias TCP/UDP | |
| nc -zv host 22 | Escanear portas de um host | |
| nc -l 1234 | Escutar em uma porta TCP | |
| nc host 1234 < file | Enviar um arquivo para uma porta remota | |
| nmap | Ferramenta de exploração de rede e scanner de portas/segurança | |
| nmap -sP 192.168.1.0/24 | Escaneamento de ping em uma sub-rede | |
| nmap -sV 192.168.1.1 | Detecção de serviço/versão | |
| nmap -O 192.168.1.1 | Detecção de SO | |
| nslookup | Consultar servidores de nomes de domínio da Internet | |
| nslookup google.com | Consultar um nome de domínio | |
| nslookup 8.8.8.8 | Consulta reversa para um IP | |
| ssh | Cliente de login remoto OpenSSH | |
| ssh user@host | Conectar a um host | |
| ssh -p 2222 user@host | Conectar usando uma porta diferente da padrão | |
| ssh -i ~/.ssh/id_rsa user@host | Login com uma chave privada específica | |
| ss | Utilitário para investigar sockets | |
| ss -tuln | Listar portas TCP/UDP em escuta | |
| ss -s | Estatísticas resumidas | |
| ss -l | Listar sockets em escuta | |
| telnet | Interface de usuário para o protocolo TELNET | |
| telnet host 80 | Conectar a um host na porta 80 | |
| telnet example.com 443 | Conectar na porta 443 | |
| telnet localhost 25 | Conectar ao SMTP local | |
| traceroute | Rastrear a rota até um host de rede | |
| traceroute 8.8.8.8 | Rastrear caminho até um IP | |
| traceroute -m 15 8.8.8.8 | Limitar saltos máximos | |
| wget | Recuperar arquivos da web | |
| wget -O file.txt URL | Salvar saída em um arquivo | |
| wget URL | Baixar no diretório atual | |
| wget -c URL | Continuar um download parcial | 
🔍 Busca e gerenciamento de arquivos
| Comando | Exemplo | Descrição | 
|---|---|---|
| basename | Remover diretório e sufixo de nomes de arquivos | |
| basename /path/to/file | Imprimir o nome do arquivo de um caminho | |
| basename /path/to/file .txt | Remover um sufixo do nome | |
| dirname | Remover o último componente de um caminho | |
| dirname /path/to/file | Mostrar a parte do diretório do caminho | |
| dirname /etc/passwd | Mostrar o pai de  | |
| du | Estimar uso de espaço de arquivos | |
| du -sh folder/ | Mostrar tamanho de um diretório | |
| du -h * | Mostrar tamanho de itens no diretório atual | |
| du -c folder1 folder2 | Tamanho cumulativo de múltiplos diretórios | |
| file | Determinar o tipo de arquivo | |
| file some.bin | Detectar tipo de arquivo | |
| file * | Detectar tipos de todos os arquivos em um diretório | |
| file -i file.txt | Mostrar tipo MIME | |
| find | Buscar arquivos | |
| find /path -type f -name "*.sh" | Encontrar scripts shell por nome | |
| find . -size +10M | Encontrar arquivos maiores que 10 MB | |
| find /tmp -mtime -1 | Encontrar arquivos modificados no último dia | |
| locate | Localizar arquivos por nome usando banco de dados | |
| locate filename | Localizar um nome de arquivo | |
| locate *.conf | Busca com curinga | |
| locate -i README | Busca sem diferenciar maiúsculas/minúsculas | |
| realpath | Exibir o caminho absoluto resolvido | |
| realpath file | Resolver caminho de um arquivo | |
| realpath ../relative/path | Resolver um caminho relativo | |
| stat | Exibir status de arquivo ou sistema de arquivos | |
| stat file | Mostrar status detalhado do arquivo | |
| stat -c %s file | Imprimir apenas o tamanho do arquivo | |
| stat -f file | Mostrar status do sistema de arquivos | |
| tree | Listar conteúdo de diretórios em formato de árvore | |
| tree | Imprimir árvore de diretório | |
| tree -L 2 | Limitar profundidade de exibição | |
| tree -a | Incluir arquivos ocultos | 
📊 Monitoramento do sistema
| Comando | Exemplo | Descrição | 
|---|---|---|
| dmesg | Imprimir ou controlar o buffer de mensagens do kernel | |
| dmesg | tail | Mostrar as últimas mensagens do kernel | |
| dmesg | grep usb | Filtrar mensagens de USB | |
| free | Exibir uso da memória | |
| free -h | Unidades legíveis para humanos | |
| free -m | Mostrar em MB | |
| htop | Visualizador interativo de processos | |
| htop | Executar  | |
| iotop | Exibir uso de I/O por processos | |
| iotop | Executar  | |
| iotop -o | Mostrar apenas processos realizando I/O | |
| lsof | Listar arquivos abertos | |
| lsof -i :80 | Mostrar processos usando a porta 80 | |
| lsof -u username | Mostrar arquivos abertos por um usuário | |
| uptime | Exibir tempo de atividade do sistema e cargas médias | |
| vmstat | Relatar estatísticas de memória virtual | |
| vmstat 1 | Atualizar a cada 1 segundo | |
| vmstat 5 3 | Intervalo de 5 segundos, 3 relatórios | |
| watch | Executar um programa periodicamente e mostrar a saída | |
| watch -n 1 df -h | Monitorar uso de disco | |
| watch -d free -h | Destacar diferenças e monitorar memória | 
📦 Gerenciamento de pacotes
| Comando | Exemplo | Descrição | 
|---|---|---|
| apt | Gerenciador de pacotes APT (Debian/Ubuntu) | |
| apt install curl | Instalar um pacote | |
| apt remove curl | Remover um pacote | |
| apt update && apt upgrade | Atualizar listas de pacotes e atualizar | |
| dnf | Dandified YUM (família Fedora/RHEL) | |
| dnf install curl | Instalar um pacote | |
| dnf upgrade | Atualizar pacotes | |
| rpm | Gerenciador de pacotes RPM | |
| rpm -ivh package.rpm | Instalar um pacote RPM | |
| rpm -e package | Remover (desinstalar) um pacote | |
| snap | Gerenciador de pacotes Snappy | |
| snap install app | Instalar um snap | |
| snap remove app | Remover um snap | |
| yum | Yellowdog Updater Modified (RHEL/CentOS) | |
| yum install curl | Instalar um pacote | |
| yum remove curl | Remover um pacote | 
💽 Sistemas de arquivos
| Comando | Exemplo | Descrição | 
|---|---|---|
| blkid | Localizar/imprimir atributos de dispositivos de bloco | |
| blkid | Listar dispositivos de bloco e atributos | |
| df | Relatar uso de espaço em disco do sistema de arquivos | |
| df -Th | Tamanhos legíveis por tipo | |
| fsck | Verificar e reparar um sistema de arquivos Linux | |
| fsck /dev/sda1 | Verificar um dispositivo | |
| lsblk | Listar informações sobre dispositivos de bloco | |
| lsblk | Listar dispositivos em formato de árvore | |
| mkfs | Construir um sistema de arquivos Linux | |
| mkfs.ext4 /dev/sdb1 | Criar um sistema de arquivos ext4 | |
| mount | Montar um sistema de arquivos | |
| mount /dev/sdb1 /mnt | Montar um dispositivo em  | |
| mount | grep /mnt | Mostrar sistemas montados filtrados por caminho | |
| parted | Programa de manipulação de partições | |
| parted /dev/sdb | Abrir um disco para particionamento | |
| umount | Desmontar sistemas de arquivos | |
| umount /mnt | Desmontar um ponto de montagem | 
🤖 Scripts e automação
| Comando | Exemplo | Descrição | 
|---|---|---|
| alias | Definir ou exibir aliases do shell | |
| alias ll='ls -la' | Criar um alias útil | |
| alias | Listar aliases definidos | |
| bash/sh | Executar scripts de shell | |
| bash script.sh | Executar um script com Bash | |
| sh script.sh | Executar um script com  | |
| crontab | Tabelas cron por usuário | |
| crontab -e | Editar o crontab do usuário atual | |
| read | Solicitar entrada do usuário em scripts de shell | |
| read name | Ler em uma variável | |
| set | Definir opções/parâmetros posicionais do shell | |
| set -e | Sair no primeiro erro | |
| source | Ler e executar comandos de um arquivo no shell atual | |
| source ~/.bashrc | Recarregar configuração do shell | |
| trap | Capturar sinais e executar comandos | |
| trap "echo 'exit'" EXIT | Executar um comando ao sair do shell | 
🛠 Desenvolvimento e depuração
| Comando | Exemplo | Descrição | 
|---|---|---|
| gcc | Compilador GNU C | |
| gcc main.c -o app | Compilar um arquivo fonte em C | |
| gdb | Depurador GNU | |
| gdb ./app | Depurar um binário compilado | |
| git | Sistema de controle de versão distribuído | |
| git status | Mostrar status da árvore de trabalho | |
| git commit -m "msg" | Commit com mensagem | |
| ltrace | Rastreador de chamadas de biblioteca | |
| ltrace ./app | Rastrear chamadas de biblioteca de um binário | |
| make | Utilitário para manter grupos de programas | |
| make | Compilar conforme Makefile | |
| shellcheck | Análise estática para scripts de shell | |
| shellcheck script.sh | Analisar um script de shell | |
| strace | Rastrear chamadas de sistema e sinais | |
| strace ./app | Rastrear syscalls de um programa | |
| valgrind | Framework de instrumentação para análises dinâmicas | |
| valgrind ./app | Executar um programa sob Valgrind | |
| vim/nano | Editores de texto em linha de comando | |
| vim file.sh | Editar com Vim | |
| nano file.sh | Editar com Nano | 
📌 Diversos
| Comando | Exemplo | Descrição | 
|---|---|---|
| cal | Exibir um calendário | |
| cal 2025 | Mostrar calendário do ano | |
| cal 08 2025 | Mostrar um mês específico | |
| date | Exibir ou definir a data e hora do sistema | |
| date +%T | Imprimir hora atual (HH:MM:SS) | |
| date -d "next friday" | Imprimir data de um dia relativo | |
| factor | Fatorar inteiros | |
| factor 100 | Fatorar um número | |
| man | Formatar e exibir páginas de manual online | |
| man tar | Abrir uma página de manual | |
| man -k copy | Pesquisar manuais por palavra-chave | |
| man 5 passwd | Abrir uma seção específica do manual | |
| seq | Imprimir sequências de números | |
| seq 1 5 | Contar de 1 a 5 | |
| seq 1 2 9 | Contar com incremento | |
| seq -s ',' 1 5 | Unir números com separador personalizado | |
| yes | Imprimir uma string repetidamente até ser interrompido | |
| yes | rm -r dir | Auto-confirmar uma exclusão recursiva | 
📚 Recursos adicionais
📘 páginas man - manuais detalhados de comandos:
man ls
man rm📙 TLDR - exemplos concisos de uso de comandos populares:
🧠 Dica: Instale tldr para ajuda em estilo de folha de referência:
sudo apt install tldr   # ou: npm install -g tldr
tldr tar                # exemplo de um resumo curto para o comando tar🌐 Links úteis
Páginas man do Linux online — manuais oficiais, pesquisáveis por nome de comando:
https://man7.org/linux/man-pages/
Páginas man simplificadas e comunitárias — ajuda mantida pela comunidade com exemplos práticos:
https://tldr.sh/