Comandos de console - Linux
 
  - ALT+tecla de função (ex. ALT+F1) muda de console.
  
- Em alguns casos, é necessário pressionar CTRL+ALT+tecla
      de função.
  
- Ao digitar parte de um comando ou nome de arquivo, pressionando TAB
      uma vez, o nome é completado. Se o Linux bipar, há mais
      de um arquivo que começa com o nome digitado. Se pressionar TAB
      novamente, todas as possibilidades serão mostradas.
  
- As setas para cima e para baixo voltam e avançam os
      últimos comandos digitados.
  
- SHIFT+PgUp, SHIFT+PgDn mostra o que apareceu antes e depois no console.
  
- CTRL+L  Limpa a tela.
  
- Se porventura o terminal parar de responder (isso acontece ao pressionar
      CTRL+S), pressionar CTRL+Q.
  - CTRL+R faz uma busca no histórico:
 Pressionar CTRL+R e digitar o comando
- Para repetir uma tecla um certo número de vezes:
 Pressionar ALT, digitar um número de 0 a 9, soltar ALT, digitar
    o restante do número e pressionar a tecla que será
    repetida.
 Exemplo, pressionar ALT, digitar 1, soltar ALT, pressionar 0 e A
    é o mesmo que pressionar 10 vezes a letra A.
 Obs. Não funcionou em terminal dentro do X.
- CTRL+D  logout
 
- ALT+P  aparecerá um ':'. Em seguida você digita alguma palavra
      ou comando que você já digitou antes e pressione enter,
      será retornada a ocorrencia do comando que você
      já digitou outras vezes.
  
- CTRL+K  apaga a palavra que estiver à direita do cursor.
  
- CTRL+W  apaga a palavra que estiver à esquerda do cursor.
  
- CTRL+\  sai de um programa (pode ser usado quando um programa trava),
      gerando um arquivo chamado "core", que é simplesmente um "dump"
      da memória do programa. Pode não funcionar com muitos
      programas.
  - Letras maiúsculas são diferentes das minúsculas
  
- Podem ter até 255 caracteres
  
- O ponto é um caracter comum, como as letras. Não indicam extensão de arquivo
  
- É usado a barra ("/") para separar diretórios
  
- Arquivos ocultos começam com um ponto.
  
- Arquivos de backup geralmente terminam com "~".
Digitando-se: ls -laF --color=auto
  - Diretórios:     Terminam com "/"
  
- Executáveis:    Terminam com "*" (tem atributo x)
  
- Links:          Terminam com "@"
  
- Sockets:        Terminam com "="
  
- Pipes:          Terminam com "|"
Links
  - Link simbólico
  
- É um arquivo que contém o caminho para chegar ao
      arquivo alvo.
  
- Link fixo (hard link)
  
- É o próprio arquivo com um nome diferente.
Se um arquivo tiver vários nomes, ao apagar um deles, somente
   o nome será apagado. O arquivo só é removido se
   todos os nomes forem apagados, e nenhum programa estiver usando
   o arquivo.
Todos os nomes do mesmo arquivo têm os mesmos atributos
   (permissões, dono, grupo, etc.).
Porém, links simbólicos podem apontar para outros sistemas
   de arquivos, e links fixos não podem.
Curingas
São usados para especificar mais de um arquivo.
  - ?
    
- Equivale a qualquer caracter (um só caracter).
  
- *
    
- Equivale a qualquer caracter ou conjunto de caracteres.
  
- [A-Z]
    
- Equivale a qualquer letra de A a Z. Pode-se substituir A e Z por
        quaisquer outros caracteres.
  
- [^A]
    
- Equivale a qualquer caracter exceto A. Pode-se substituir A por
        qualquer outro caracter.
Pode-se combinar o que tive entre [], por exemplo:
  a[A-Za-z^C]*
Significa qualquer arquivo que começa com a letra a, e o segundo
   caracter é uma letra de A a Z (maiúsculo) ou de a a z
   (minúsculo) e não é a letra C maiúscula.
Podem ser executados vários comandos na mesma linha, separador
   por ";"
Exemplo: 
clear ; ls -l
Para digitar nomes de arquivos que tenham espaço, digitar entre
   aspas ou usar \. Por exemplo, para entrar em um diretório chamado
   Meus documentos, digitar um dos dois:
  cd "Meus documentos"
  cd Meus\ documentos
Para apagar, copiar, mover, etc. arquivos que começam com -,
   exemplo:
  - rm abc
    
- apaga o arquivo abc
  
- rm -- -abc
    
- apaga o arquivo -abc
  
- rm -abc
    
- o rm interpretará -abc como uma opção,
        não como um arquivo
  
- rm ./-abc
    
- Outra solução para apagar o arquivo -abc
- clear
  
- Limpa a tela
- date
  
- Mostra data e hora atuais
- man <comando>
  
- Manual: mostra informações sobre um comando
 Exemplo de uso:   man ls
 As páginas do manual são numeradas por seção,
  que aparecem entre parênteses após o nome:
 1 - Programas em geral
 2 - Bibliotecas do sistema (do kernel e C, usualmente)
 3 - Bibliotecas adicionais (libs e outras linguagens)
 4 - Devices
 5 - Arquivos de configuração
 6 - Jogos (esse pessoal do Unix pensa em tudo! ;)
 7 - Tabelas e miscelânea
 8 - Administração do sistema
 n - novas manpages (tem muito do TCL/Tk)
 Ex. Manpage de random(2) é da biblioteca C, manpage de random(4)
  é a do dispositivo /dev/random.
 Para consultar o manual de uma seção "N": man N nome.
 Para ver quais as manpages disponíveis: man -aW random
- xman
  
- Uma versão do MAN para o X
- script  <arquivo>
  
- Cria um arquivo com a saída de todos os comandos que forem digitados
      no shell. Ao terminar digite: exit
- uname -a
  
- Mostra a versão do kernel
- uptime
  
- Mostra há quanto tempo o sistema está funcionando
- file <arquivo>
  
- Mostra qual é o tipo de arquivo
- ls <diretório>
  
- Mostra conteúdo de um diretorio
  
    | -a | mostra arquivos ocultos |  | -l | mostra mais dados dos arquivos |  | -R | mostra também conteúdo dos
       subdiretórios |  | -d | mostra diretórios ao invés de mostrar
       o conteúdo dos diretórios |  | -i | mostra o "inode" correspondente ao arquivo/diretório
      em um arquivo com dois nomes (link fixo), os dois nomes
      possuem o mesmo inode. |  
 
- cd <diretório>
  
- Muda de diretório (CD do DOS)
 Diretórios especiais: ".."=anterior "."=este diretório
 Se o nome do diretório for omitido, vai par ao diretório "home"
  do usuário
- cp <origem> <destino>
  
- Copia arquivos (COPY do DOS)
 <origem> pode ser mais de um arquivo
 
    | -i | pede confirmação |  | -f | não pede confirmação |  | -r, -R | copia subdiretórios também |  | -p | mantém permissões do arquivo original
       e datas de modificação |  | -d | copia links, não os arquivos e diretórios
       referenciados pelos links |  | -a | copia preservando o máximo possível da
       estrutura e dos arquivos;
    equivale a -dpR |  
 
- mv <origem> <destino> [-i]
  
- Move arquivo(s) (MOVE do DOS)
  <origem> pode ser mais de um arquivo
  Renomeia arquivo ou diretório (REN do DOS)
  Opções -i, -f e -u, ver em cp (acima)
- rename <nome antigo> <novo nome> <arquivos>
  
- Renomeia todos os arquivos especificados em <arquivos>
 Renomear significa substituir <nome antigo> por <novo nome>
  nos nomes dos arquivos.
 Exemplo, renomear *.htm para *.html:
 rename .htm .html *.htm
- cmp <arquivo> <arquivo>
  
- Compara arquivos (FC do DOS)
- pwd
  
- Mostra o diretório atual
- rm <arquivos>
  
- Apaga arquivos
  
    | -r | apaga diretório e tudo o que estiver
      dentro |  | -i | pede confirmação |  | -f | não pede confirmação |  
 
- shred
  
- Apaga um arquivo com segurança, primeiro escrevendo no arquivo para
       apagar o conteúdo original
 Exemplo de como limpar uma partição (apagar tudo):
 shred -n 5 -z /dev/hxx
- mkdir <diretório>
  
- Cria diretório (MD do DOS)
- rmdir <diretório>
  
- Apaga diretório vazio (RD do DOS)
- cat <arquivo>
  
- Mostra o conteúdo do arquivo (TYPE do DOS)
 Também pode ser usado para criar um arquivo de texto pequeno:
 cat > arquivo.txt
 O cursor fica esperando digitar algo. Ao terminar a digitação
  pressione CTRL+D.
- which <comando>
  
- Mostra o caminho completo do arquivo, como se ele fosse executado
- whereis <comando>
  
- Procura o executável
- grep  <opções>  <texto>  <arquivo(s)>
  
- Procura um texto em um ou mais arquivos
 a opção -l (se presente) mostra somente os arquivos que
  contém o texto
 Exemplo: grep -l "teste" *.txt
 Exemplo de como procurar mais de uma palavra:
 grep -E '(string1|string2)' *.txt
 grep -lE '(string1|string2)' *.txt
 Nota: egrep é o mesmo que grep -E
- less <arquivo>
  
- Mostram o conteúdo de um arquivo
 less é interativo, cat não é
 Obs.: Vários comandos do programa "vi" funcionam no less
- ln -s <nome do arquivo ou diretório> <nome do link>
  
- Cria um link simbólico
- ln <nome do arquivo ou diretório> <nome do link>
  
- Cria um "hard link"
- find -name <nome do arquivo>
  
- Procura um arquivo no diretório atual, podem ser usados ? E *
- locate
  
- Outro progrma para procurar arquivos
- chmod [-R] [u][g][o]{[+][-]}[r][x][w] <arquivo(s)>
  
- Altera atributos do arquivo
  
    - -R altera atributos recursivamente
    
- u=usuario: dono do arquivo
    
- g=grupo do dono do arquivo
    
- o=outros
    
- a=todos os usuários
    
- +=colocar atributo
    
- -=tirar atributo
    
- r=permitir leitura
    
- w=permitir escrita
    
- x=permitir executar (diretórios: permitir entrar no
      diretório)
  
 Modo absoluto: 
    - Atributos especiais (um dígito):
    
      - +1 arquivo só pode ser apagado pelo proprietário
      
- +2 arquivo é executado sobre seu grupo, mesmo que o
          usuário não pertença ao grupo
      
- +4 arquivo é executado como se fosse pelo proprietário
    
 
- Atributos do proprietário, do grupo e dos outros
        usuários (3 dígitos):
    
      - +1 arquivo executável (diretórios: permitir entrar
          no diretório)
      
- +2 escrita
      
- +4 leitura
    
 
 Exemplos:
 chmod +w lista.txt
 chmod 775 textos
 chmod 700 Particular "Meus documentos"
 Quando se executa "ls -l", os atributos são os seguintes: 
    - 1 caracter = tipo do arquivo:
      
        - - = Arquivo comum
        
- b = Dispositivo de bloco
        
- c = Dispositivo de caracter
        
- d = Diretório
        
- | = Link
        
- p = FIFO ("named PIPE")
        
- s = Socket da família AF_UNIX
      
 
- 3 caracteres = r,w,x do dono do arquivo
    
- 3 caracteres = r,w,x do grupo do dono do arquivo
    
- 3 caracteres = r,w,x de todos os usuários
  
 
- chown [-R] <dono>[.grupo] <arquivo(s)>
  
- Altera dono ou dono/grupo de um ou vários arquivos
 -R altera dono recursivamente
 Exemplos:
 chown root arquivo1
 chown root.root diretorio1
- lsattr <arquivo>
  
- Lista atributos de arquivo
 -R lista também os atributos dos arquivos dos diretórios
 -a lista também arquivos ocultos
- chattr <arquivo>
  
- Muda atributos de arquivo
  
    - + = coloca atributo
    
- - = retira atributo
    
- A = não atualiza data de acesso ao arquivo
    
- S = Arquivo com atualização síncrona
    
- a = Modo append, não permite sobrescrever arquivo
    
- c = Arquivo será comprimido automaticamente ao ser gravado
    
- i = Não pode ser modificado
  
 
- lsof (LiSt Open Files)
  
- Mostra informações sobre arquivos que estão abertos
  Procurar na Internet
- symlinks
  
- Utilitário de manutenção de links simbólicos
  Pode detectar links quebrados, com '.' e '/' denecessários, etc.
Os dispositivos mais comuns são:
  - /dev/fd0   /dev/fd1
    
- Unidades de disco flexível
  
- /dev/hdXY
    
- Unidades de disco rígido, onde
 X=a,b,c,d conforme o disco
 Y=0,1,2,3,4,5,6,7 conforme a partição (4-7=extendida)
 Exemplos: /dev/hda1,  /dev/hdd
Comandos:
- mount <dispositivo> <diretório>
  
- Monta o dispositivo em um diretório;
  O diretório deve existir e estar vazio
- umount <dispositivo>
 umount <diretório>
- Desmonta o dispositivo montado em um diretório;
  Não vai funcionar se o dispositivo estiver sendo usado
- df
 df -h
- Mostra(m) dispositivos montados, espaço usado e espaço
      disponível
- du
  
- Mostra quantos Kbytes o diretório está ocupando
- fdformat  <dispositivo>
  
- Formatação de baixo nível
- mkfs, mkfs.msdos, mkfs.ext2, mkfs.minix, mkfs.xiafs  [-c]
    <dispositivo>
  
- Formatação - cria estrutura do disco
 -c: verifica erros
- mke2fs -j
  
- Cria sistema de arquivos do tipo ext3 (ext3 = ext2 + journal)
- fsck, fsck.msdos, fsck.ext2  <dispositivo>
  
- Verifica um sistema de arquivos
- fdisk <dispositivo>
  
- Mostra/Cria/Apaga partição ou tipo da
      partição no dispositivo especificado
- badblocks
  
- Busca blocos ruins (com defeito) em um dispositivo
- mkswap <dispositivo>
  
- Prepara partição de transferência
- swapon <dispositivo>
  
- Ativa partição de transferência
- swapoff <dispositivo>
  
- Desativa partição de transferência
 Para ativar partição de transferência (SWAP):
 mkswap <dispositivo>
 swapon <dispositivo>
- update
  
- Grava em disco os dados contidos nos buffers
- parted
  
- Programa para criar, destruir, redimensionar, mover e copiar
  partições de discos rígidos
Instalar pacote dosfstools-2.2-2cl.i386.rpm se quiser ferramentas para
gerenciar sistemas de arquivo do DOS/Windows
Formatos tar e tar.gz
  - tar -xvf  arquivo.tar
    
- Extrai arquivos/diretórios
  
- tar -cvf  arquivo.tar  arquivos-origem
    
- Coloca arquivos/diretórios
Acrescentar z para compactar/descompactar (formato tar.gz)
  - tar -zxvf <arquivo.tar.gz>
    
- Descompacta
  
- tar -zcvf <arquivo.tar.gz>  [arquivos/diretórios]
    
- Compacta
Acrescentar I para compactar/descompactar formato tar.bz2
  - tar -Ixvf <arquivo.tar.gz>
    
- Descompacta
  
- tar -Icvf <arquivo.tar.gz>  [arquivos/diretórios]
    
- Compacta
Para tar compactar com exclusão
  Usar a opção --exclude <arquivo/diretório>
  Exemplo:
  tar zcvf backup.tar.gz --exclude melancia DIRETORIO-PRINCIPAL
  Obs. Não é possível usar curingas (* e ?) com a
    opção --exclude
Compactar/descompactar um arquivo usando gzip
  - gzip arquivo.gz
    
- Descompacta
  
- gzip arquivo.gz arquivo
    
- Compacta
Compactar/descompactar um arquivo usando bz2
  - bzip2 arquivo.bz2
    
- Descompacta
  
- bzip2 arquivo.bz2 arquivo
    
- Compacta
Formato zip do DOS/Windows
Se arquivos-origem for 
-@ a lista de arquivos será pega da entrada padrão.
  - zip  arquivo.zip  arquivos-origem
    
- Compacta arquivos, somente cria as entradas dos diretórios
  
- zip -D  arquivo.zip  arquivos-origem
    
- Compacta arquivos, sem os diretórios
  
- zip -r  arquivo.zip  arquivos-origem
    
- Compaca arquivos e diretórios
  
- unzip  -l  arquivo.zip
    
- Lista arquivos/diretórios compactados
  
- unzip  arquivo.zip
    
- Descompacta arquivos/diretórios
  
- unzip  -L arquivo.zip
    
- Descompacta arquivos/diretorios, mas convertendo nomes de arquivos
        e de diretorios para letras minusculas
  
- zipsplit
    
- Programa para dividir um arquivo .zip em vários
  - uuencode  nome-do-arquivo  nome-do-arquivo-após-decodificar
    
- Codifica "arquivo" com o nome "nome", colocando o resultado na
        saída padrão, para poder enviar um arquivo usando
        somente caracteres ASCII.
  
- uudecode  arquivo
    
- Extrai de "arquivo" o arquivo que foi codificado previamente,
        via uuencode. Se houver algum cabeçalho de e-mail, este
        é ignorado.
  
- compress/uncompress
    
- Para compactar/descompactar arquivos .Z
Existem vários programas de conversão, a marioria usa
   o ghostscript.
Exemplos:
  | ps2ascii | ps2epsi | ps2frag | ps2pdf | 
  | ps2pdf12 | ps2pdf13 | ps2pdfwr | ps2pk | 
  | ps2ps | pdftopbm | pdftops | pdftotext | 
  - ps
    
- Mostra todos os programas
     
       | -a | Mostra todos os processos sendo executados |  | -a | Mostra todos os processos sendo executados |  | -x | Mostra todos os processos do usuário |  | -w | Mostra os nomes completos dos processos |  
 
- kill <PID>
    
- Termina a execução de um programa
  
- kill -s 9 <PID>
    
- Termina a execução de um programa, à força
 Obs.: (extraído da linux-br) O kill -s 9 não funciona se:
    - o processo é uma tarefa do kernel que aparece como processo.
       Você não pode matá-los. Numa listagem do ps,
       você verá que esses processos ocupam sempre 0 bytes
       de memória.
    
- processos em estado Z (zumbi). Estes processos Já estão
       mortos, você não pode matá-los de novo. Eles
       só precisam que o processo-pai descubra que eles morreram.
    
- processos em estado D (uninterruptible sleep). Nenhum sinal é
       entregue a um processo em estado D. O kernel aguarda que o processo
       volte ao estado S ou R para poder mandar o sinal.
    
 Note que o estado D geralmente é associado a atividade de disco
       ou de rede e não deve durar mais que alguns instantes.
       Se demorar mais, provavelmente você está sob alta carga
       no sistema. Se um processo ficar travado em D, provavelmente ocorreu alguma coisa
       ainda mais grave: se você tem NFS e o servidor NFS não
       responde, qualquer acesso ao dispostivo montado via NFS causará
       a entrada em estado D e sairá daí até que o
       servidor NFS volte. Ou então houve algum crash no seu kernel e o processo não
       voltou de D. Nesse caso, reinicialize. 
- pidof <programa>
    
- Informa o(s) pid(s) do programa
  
- fuser <arquivo>
    
- Mostra os processos que estão usando o arquivo
 Teclar CTRL+Z durante a execução de um programa:
        Suspende o programa
- jobs
    
- Mostra programas suspensos
  
- fg <número>
    
- Coloca o programa suspenso em primeiro plano
  
- bg <número>
    
- Faz o programa ser executado em segundo plano
  
- at
    
- Agenda/Examina/Exclui tarefas para execução posterior
    Para executar um comando, por exemplo, halt às 11:30 hs: 
      at 11:30
 at> halt
 at>
 (pressionar CONTROL+D)
 Para listar as tarefas agendadas: atq Para cancelar uma tarefa: atrm  <tarefa> 
- free
    
- Mostra memória usada, livre, cache de disco e SWAP
  
- tty
    
- Informa em que terminal o shell está rodando
  
- who
    
- Mostra usuários usando o computador
  
- whoami
    
- Mostra o login do usuário que executou esse comando
  
- last
    
- Mostra os usuários que se "logaram" no sistema
 Para listar somente os últimos 15, por exemplo: last | head -15
- write usuário [tty]
    
- Envia mensagem para o usuário
 Escrever a mensagem e pressionar CTRL+D quando acabar
- wall <mensagem>
    
- Envia mensagem para todos os usuários conectados que tiverem
        permissão de mesg
  
- mesg [y/n]
    
- Permite/Não permite outros escreverem mensagens no terminal.
  
- reset
  
- Inicializa o terminal. Útil quando ocorrer algum problema
      no terminal, e as letras ficarem estranhas.
  
- setterm
    
- Configura o terminal
  
- setfont
    
- Define uma fonte para o terminal
  
- nohup
    
- Executa um comando sem interrupções de conexão
        Grava a saída no arquivo nohup.out ou, se não
        possível, em ~/nohup.out
 Ao ser executado, não coloca o comando em "background"
Outras dicas
  - Para o shell (bash) encerrar após algum tempo sem uso:
 export TMOUT=x  Onde x é o tempo, em segundos. Exemplo:
 export TMOUT=150
- Histórico do shell:
 É gravado no arquivo indicado por HISTFILE
 (não testado) Para não gravar em nenhum arquivo:
 export HISTFILE=
- Exemplo de como configurar o protetor de tela do console para 15
      minutos:
 /bin/setterm -blank 15
- Para não fazer bipe no auto-falante do PC (não o da
      placa de som):
 setterm -blength 0
 (não testado)  setterm -blength 0 -store
  - adduser
 useradd
- Adiciona usuário
 Para adicionar um usuário que não tem acesso à
      conta shell:
 adduser user1 -s /bin/false
 Onde user1 é o login do usuário.
- userdel
    
- Apaga usuário, pode apagar também o diretório
        do usuário, mas não significa apagar todos os arquivos
        do usuário
  
- usermod
    
- Modifica a conta de um usuário
  
- groupadd
    
- Adiciona novo grupo
  
- groupdel
    
- Apaga um grupo
  
- groupmod
    
- Modifica um grupo
  
- passwd
    
- Muda a senha do usuário.
 Pode também ser usado para bloquear/desbloquear
        usuário.
- id
    
- Mostra dados do usuário
      
      | id | mostra todos os dados do usuário que chamou o id |  | id <usuário> | Mostra dados do usuário |  | id -g <usuário> | Mostra só o número do grupo do usuário |  | id -gn <usuário> | Mostra só o nome do grupo |  | id -u <usuário> | Mostra o número do usuário |  
 Nota: usuários de número de 0 a 99 são
         usuários virtuais (do sistema):
         não possuem um diretório no diretório /home 
   Voltar para textos
  Voltar para textos