Tools Web Waken

Curto e fácil de lembrar

Comandos fundamentais e úteis do Linux:

Navegação e Gerenciamento de Arquivos:

  1. pwd (print working directory): Exibe o diretório de trabalho atual (a pasta em que você está no momento).
    • Exemplo: Bashpwd /home/usuario/documentos
  2. cd (change directory): Permite mudar para um diretório diferente.
    • Exemplos:
      • Mover para o diretório Downloads: cd Downloads
      • Voltar para o diretório pai: cd ..
      • Mover para o diretório home do usuário: cd ~
      • Voltar para o diretório anterior: cd -
  3. ls (list): Lista os arquivos e diretórios no diretório atual.
    • Exemplos:
      • Listar arquivos e diretórios: ls arquivo1.txt pasta1 arquivo2.pdf
      • Listar arquivos e diretórios com detalhes (permissões, proprietário, tamanho, data de modificação): ls -l total 12 -rw-r--r-- 1 usuario usuario 1024 May 18 10:30 arquivo1.txt drwxr-xr-x 2 usuario usuario 4096 May 18 10:31 pasta1 -rw-rw-r-- 1 usuario usuario 2048 May 18 10:32 arquivo2.pdf
      • Listar todos os arquivos, incluindo os ocultos (que começam com .) ls -a . .. .arquivo_oculto arquivo1.txt pasta1 arquivo2.pdf
      • Listar arquivos em ordem reversa de modificação: ls -tr
  4. mkdir (make directory): Cria um novo diretório.
    • Exemplo: Criar um diretório chamado novo_projeto: mkdir novo_projeto
    • Criar diretórios pais ausentes com a opção -p: mkdir -p diretorio/subdiretorio/final
  5. rmdir (remove directory): Remove um diretório, mas somente se estiver vazio.
    • Exemplo: Remover o diretório vazio: rmdir vazio
  6. rm (remove): Remove arquivos e diretórios. Use com cuidado!
    • Exemplos:
      • Remover um arquivo: rm arquivo.txt
      • Remover um diretório e seu conteúdo recursivamente (use com muita cautela!): rm -r diretorio_com_arquivos
      • Remover vários arquivos: rm arquivo1.txt arquivo2.pdf
      • Remover arquivos com confirmação antes de cada remoção: rm -i *.txt
  7. cp (copy): Copia arquivos e diretórios.
    • Exemplos:
      • Copiar um arquivo para o mesmo diretório com um novo nome: cp arquivo_origem.txt arquivo_copia.txt
      • Copiar um arquivo para outro diretório: cp arquivo.txt /home/usuario/backup/
      • Copiar um diretório e seu conteúdo recursivamente: cp -r pasta_origem pasta_destino
  8. mv (move): Move (ou renomeia) arquivos e diretórios.
    • Exemplos:
      • Renomear um arquivo: mv arquivo_velho.txt arquivo_novo.txt
      • Mover um arquivo para outro diretório: mv arquivo.txt /home/usuario/documentos/
      • Mover um diretório para outro local: mv pasta_velha pasta_nova
  9. touch: Cria um arquivo vazio ou atualiza o timestamp de um arquivo existente.
    • Exemplo: Criar um arquivo chamado novo_arquivo.txt: touch novo_arquivo.txt

Visualização de Arquivos:

  1. cat (concatenate): Exibe o conteúdo de um ou mais arquivos na saída padrão.
    • Exemplo: Exibir o conteúdo de arquivo.txt: cat arquivo.txt Este é o conteúdo do arquivo.
  2. less: Exibe o conteúdo de um arquivo página por página, permitindo navegação.
    • Exemplo: Visualizar um arquivo longo: less arquivo_longo.txt (Use as teclas Space para avançar, b para retroceder, q para sair)
  3. head: Exibe as primeiras linhas de um arquivo (por padrão, as 10 primeiras).
    • Exemplo: Exibir as 5 primeiras linhas de um arquivo: head -n 5 arquivo.txt
  4. tail: Exibe as últimas linhas de um arquivo (por padrão, as 10 últimas). É útil para acompanhar logs em tempo real com a opção -f.
    • Exemplos:
      • Exibir as últimas 3 linhas de um arquivo: tail -n 3 arquivo.log
      • Acompanhar as novas linhas adicionadas a um arquivo de log: tail -f arquivo.log

Busca e Filtragem:

  1. grep (global regular expression print): Busca por um padrão de texto em um ou mais arquivos.
    • Exemplos:
      • Buscar a palavra “erro” no arquivo log.txt: grep "erro" log.txt
      • Buscar a palavra “usuario” em todos os arquivos .txt no diretório atual: grep "usuario" *.txt
      • Buscar ignorando a diferença entre maiúsculas e minúsculas: grep -i "palavra" arquivo.txt
      • Exibir o número da linha onde o padrão foi encontrado: grep -n "funcao" codigo.py
  2. find: Busca por arquivos e diretórios com base em diversos critérios (nome, tipo, tamanho, data, etc.).
    • Exemplos:
      • Buscar por arquivos com o nome documento.pdf no diretório atual e seus subdiretórios: Bashfind . -name "documento.pdf"
      • Buscar por todos os diretórios no sistema: find / -type d
      • Buscar por arquivos com mais de 1MB: find / -type f -size +1M
      • Buscar por arquivos modificados nos últimos 7 dias e executar o comando ls -l para cada um: find . -mtime -7 -exec ls -l {} \;
  3. which: Localiza o caminho completo de um executável.
    • Exemplo: Encontrar o caminho do comando python: which python /usr/bin/python3

Permissões:

  1. chmod (change mode): Modifica as permissões de arquivos e diretórios. As permissões são representadas numericamente (ex: 755) ou simbolicamente (ex: u+x, g-w).
    • Exemplos:
      • Dar permissão de execução ao proprietário de um arquivo (u+x): chmod u+x script.sh
      • Remover permissão de escrita para o grupo de um diretório (g-w): chmod g-w pasta
      • Definir permissões completas para o proprietário, leitura e execução para o grupo e outros (755): chmod 755 arquivo.py
  2. chown (change owner): Modifica o proprietário e/ou o grupo de um arquivo ou diretório (requer privilégios de superusuário).
    • Exemplo: Mudar o proprietário de arquivo.txt para o usuário novo_usuario: sudo chown novo_usuario arquivo.txt
    • Mudar o proprietário e o grupo: sudo chown novo_usuario:novo_grupo arquivo.txt

Processos:

  1. ps (process status): Exibe informações sobre os processos em execução.
    • Exemplos:
      • Listar os processos do usuário atual: ps PID TTY TIME CMD 1234 pts/0 00:00:01 bash 5678 pts/0 00:00:00 ps
      • Listar todos os processos com mais detalhes (usuário, PID, CPU, memória, etc.): ps aux
      • Listar processos de um usuário específico: ps -u nome_do_usuario
  2. top ou htop: Exibe uma visão dinâmica e em tempo real dos processos em execução, uso de CPU, memória, etc. (htop é uma versão mais interativa e visualmente agradável, pode precisar ser instalada).
    • Exemplo: Executar o monitor de processos: top ou htop (Use q para sair)
  3. kill: Envia sinais para processos, geralmente para terminá-los. O sinal padrão é SIGTERM (15), que pede ao processo para terminar graciosamente. SIGKILL (9) força o término imediato.
    • Exemplos:
      • Enviar o sinal padrão (SIGTERM) para o processo com PID 1234: kill 1234
      • Forçar o término do processo com PID 5678: kill -9 5678
      • Enviar o sinal HUP (para recarregar configuração) para um processo: kill -HUP pid_do_processo
  4. killall: Termina processos pelo nome.
    • Exemplo: Terminar todos os processos com o nome firefox: killall firefox
  5. bg (background): Envia um processo interrompido para rodar em segundo plano.
  6. fg (foreground): Traz um processo em segundo plano de volta para o primeiro plano.
  7. jobs: Lista os trabalhos (processos) que estão rodando em segundo plano ou que foram interrompidos.

Rede:

  1. ip addr ou ifconfig: Exibe informações sobre as interfaces de rede. (ip addr é mais moderno e recomendado).
    • Exemplo: ip addr
  2. ping: Envia pacotes ICMP para um host para testar a conectividade.
    • Exemplo: Testar a conectividade com o Google: ping google.com (Use Ctrl+C para interromper)
  3. netstat ou ss: Exibe estatísticas de rede, conexões, portas em escuta, tabelas de roteamento, etc. (ss é mais moderno e recomendado).
    • Exemplo: Listar todas as conexões TCP em escuta: ss -lt
  4. ssh (secure shell): Abre uma conexão segura com um servidor remoto.
    • Exemplo: Conectar ao servidor usuario@servidor.com: ssh usuario@servidor.com
  5. scp (secure copy): Copia arquivos de forma segura entre sistemas.
    • Exemplos:
      • Copiar um arquivo local para um servidor remoto: scp arquivo.txt usuario@servidor.com:/home/usuario/
      • Copiar um arquivo de um servidor remoto para o sistema local: scp usuario@servidor.com:/home/usuario/arquivo_remoto.txt .

Outros Comandos Úteis:

  1. history: Exibe o histórico dos comandos digitados no terminal.
    • Exemplo: history 1 pwd 2 ls -l 3 cd Downloads
    • Executar um comando do histórico usando o número: !2 executaria ls -l.
  2. date: Exibe ou configura a data e hora do sistema.
    • Exemplo: Exibir a data e hora atuais: date Sun May 18 10:45:00 -03 2025
  3. uname: Exibe informações sobre o sistema.
    • Exemplos:
      • Exibir o nome do kernel: uname -s Linux
      • Exibir todas as informações do sistema: uname -a Linux meu_host 5.15.0-101-generic #112-Ubuntu SMP Thu Feb 23 16:34:52 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
  4. df (disk free): Exibe informações sobre o espaço em disco utilizado e disponível.
    • Exemplo: df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 98G 25G 69G 27% /
  5. du (disk usage): Exibe o uso de espaço em disco de arquivos e diretórios.
    • Exemplos:
      • Exibir o tamanho do diretório atual: du -h . 12K .
      • Exibir o tamanho de um diretório específico: du -sh pasta 20M pasta
  6. man (manual): Exibe a página de manual de um comando. Essencial para aprender mais sobre qualquer comando.
    • Exemplo: Ver a página de manual do comando ls: man ls (Use Space para avançar, b para retroceder, / para buscar, q para sair)
  7. sudo (superuser do): Permite executar comandos com privilégios de superusuário (root). Requer que o usuário esteja configurado no arquivo sudoers.
    • Exemplo: Instalar um pacote usando o gerenciador de pacotes apt: sudo apt update
  8. apt ou yum ou dnf: Gerenciadores de pacotes usados para instalar, remover e atualizar software (a versão específica depende da distribuição Linux).
    • Exemplos (para distribuições Debian/Ubuntu com apt):
      • Atualizar a lista de pacotes disponíveis:sudo apt update
      • Instalar um pacote: sudo apt install nome_do_pacote
      • Remover um pacote: sudo apt remove nome_do_pacote
      • Remover um pacote e suas configurações: sudo apt purge nome_do_pacote
  9. Redirecionamento (>, >>, <) :
    • >: Redireciona a saída de um comando para um arquivo, sobrescrevendo o conteúdo existente. ls -l > lista_de_arquivos.txt
    • >>: Redireciona a saída de um comando para um arquivo, adicionando ao final do conteúdo existente