Você está na página 1de 11

Comandos Bsicos de Linux

Material de apoio ficha de trabalho n 1 Aceder s consolas virtuais (De F1 a F12) Para aceder ALT+F1 ... ALT+F12 ou CTRL+ALT+F1 ... CTRL+ALT+F12 (Caso exista a interface grfica na mquina). No caso do FEDORA a Interface Grfica est na consola F1 No caso do Ubuntu A Interface Grfica est na consola F7 Prompt utilizador@maquina:/caminho # $ - indica utilizador que est na sesso como utilizador comum # - indica que est na sesso como utilizador root (Administrador do Sistema) ~ - indica o diretrio home do utilizador Para completar Comandos: use a tecla TAB Nota: os sistemas UNIX so case sensitive. Deslocar no ecr: SHIFT+PG UP e SHIFT+PG DW Histrico de comandos: Todos os comandos executados podem ser acedidos com SETA PARA CIMA e SETA PARA BAIXO. Comandos Iniciais do Unix: Obs: O Caracter # antes da palavra, representa um comando que pode ser executado diretamente na consola. Para nos tornarmos root da mquina # su Ou #sudo -s Limpar o ecr # clear Obs: Tecla de atalho: ctrl+l Mostrar contedo dos diretrios # ls # dir # vdir # ll (Este um alias) # ls / (exibe a raiz do disco)

# ll / (exibe a raiz do disco de forma detalhada)

Alias: Utilizado para denominar comandos Use da seguinte forma: alias nome_alias=comando Ex: # alias limpa=clear # limpa Para criar alias com vrios comandos: # alias nome_alias="clear ; ls ; date ; whoami" Para mostrar todos os alias # alias Para eliminar um alias Use da seguinte forma: unalias nome-do-alias Exemplo: # unalias nome_alias Visualizar data e hora # date Visualizar o calendrio # cal # cal 1980 Para acertar data e hora utilize a seguinteforma: date MMDDHHminAAAA # date 100220302012 Para visualizar informaes da Mquina

Verso, kernel, plataforma # uname -a Para visualizar as parties dos discos # df # df -h (Exibe em Mega, Giga...) # mount Informaes de hardware # lspci # lspci -v # lspci -vv # lspci -vvv # lspci -vvvv Para visualizar dispositivos USB # lsusb

# lsusb -v Para visualizar as caractersticas do processador # lscpu ou # cat /proc/cpuinfo Para visualizar as caractersticas de memria do sistema: # free # free -m (exibe em megas) # free -g (exibe em giga) Mostrar os mdulos que esto a ser utlizados no momento # lsmod Lista os processos da mquina em tempo real # top Visualiza o tempo que a mquina est ligada # uptime Mostra os comandos executados na consola: # history Acede a um comando do histrico !Nmero do comando Ex: # !15 Apaga o histrico de comandos: # history -c Para obter ajuda do Linux: comando --help Ex: # df --help Para obter um manual completo de um comando Use da seguinte forma: man comando Ex: # man ls Para procurar uma palavra na descrio do comando Use da seguinte forma: apropos "palavra" ou ainda whatis "palavra" Ex: # apropos disk (procura todos os comandos que tem a palavra disk na descrio) ou ainda # man -k disk

Teclas de Atalho de um manual: q - sai do manual / - procura uma palavra no manual n - procura a prxima ocorrncia da palavra p - procura a ocorrncia anterior da palavra g - vai para o incio do manual G - vai para o fim do manual Informao das pginas (info page) Idntico as pginas de manual, mas usada na navegao entre as pginas # info ou ainda info e o nome do comando que pretendemos visualizar a ajuda Ex: # info df Teclas de Atalho de uma info page: q - Sair da info pages ? - Mostra o ecr de ajuda (que contm a lista completa de teclas de navegao e muitas outras opes). n - Avana para a prxima pgina p - Volta uma pgina u - Sobe um nvel do contedo (at verificar o ndice de documentos) m - Permite usar a localizao para encontrar uma pgina do info. Pressione m, digite o comando e pressione a tecla <Enter> e surge no ecr automaticamente a pgina correspondente. d - Volta ao ndice de documentos. Criao de utilizadores Para criar o utilizador noite com senha n0it3 # useradd -m noite # passwd noite Para excluir um utilizador # userdel -r noite useradd -m -s /bin/bash noite # passwd noite Para nos tornarmos noutro utilizador sem ter que modificar a sesso. Use a seguinte forma: su nome-do-usurio Ex: # su carlos No caso do ubuntu e algumas outras distribuies, utilize o comando su da seguinte forma: # sudo su Para sair do root ou de um utilizador acedido via o comando su # exit

ou a tecla de atalho CTRL+D Para efetuar o logoff de uma consola: # exit # logout ou a combinao de teclas CTRL+D Visualizar os utilizadores com sesso aberta # who #w # whoami # who am i # logname # users Comandos para desligar o Servidor Linux: Desliga o servidor: # halt # poweroff # shutdown -h now Reiniciar o servidor: # reboot # shutdown -r now # CTRL + ALT + DEL Exemplos para desligar o servidor: # shutdown -h +30 (Desliga o servidor daqui a 30 minutos) # shutdown -h +120 (Desliga o servidor daqui a 2 horas) Exemplos para reiniciar o servidor: # shutdown -r +30 (Reinicia o servidor daqui a 30 minutos) # shutdown -r +120 (Reinicia o servidor daqui a 2 horas)

Estrutura de diretrios
Material de apoio ficha de trabalho n 2 Listar diretrios (pastas) e ficheiros Use os comandos: ls ou dir ou vdir ls: o ls um comando usado para listar ficheiros e diretrios.

Opes

-a, --all no esconde ficheiros comeados por . -A, --almost-all no mostra os ficheiros implcitos . e .. -d, --directory lista os nomes dos diretrios em vez do seu conteudo -l usa o formato lista longa (com mais detalhes) -full usa o formato lista longa (com mais detalhes) e sem esconder os ficheiros comeados por .

* -t * -r # # # # # #

ordena por data inverte a ordem

ls dir vdir ls -l (lista os detalhes) ls -a (exibe arquivos e diretrios ocultos) ls -la (ocultos + detalhes)

rvore de diretrios Conceitos: ~ = diretrio home / = raiz . = diretrio atual .. = diretrio anterior ../.. = dois diretrios anteriores (e assim por diante) Visualizar o diretrio atual # pwd Aceder aos diretrios # cd / (acede raiz do disco) # cd /etc (vai para o diretrio /etc) # cd /tmp (vai para o diretrio /tmp) # cd /usr/local/share/docs (vai para o diretrio /usr/local/share/docs) # cd .. (volta para trs um nvel) # cd ../.. (volta para trs dois nveis) # cd ou cd ~ (vai para o meu diretrio home) # cd - (vai para o ltimo diretrio de trabalho) Criar diretrios (pasta) Use a seguinte forma: mkdir nome-do-diretrio Exemplo: # mkdir vazio Criar diretrios com dependncia # mkdir -p numeros/1/2/3/4/5/6 O Resultado:

Apagar diretrios vazios Use da seguinte forma: rmdir nome-do-diretorio Exemplo: # rmdir vazio Alterar o nome do diretrio Use a seguinte forma: mv nomeatual novonome Exemplo: # mv numeros letras

Mover diretrios Use a seguinte forma: mv nomeatual novodestino Exemplo: # mv letras /tmp (mover o diretrio letras para dentro do diretrio /tmp) # mv /tmp/letras . (mover o diretrio letras que estava dentro de /tmp para o diretrio atual) Copiar diretrios Use a seguinte forma: cp -Rv nome-diretorio-origem destino Dica: A opo -R indica Recursividade, ou seja, copia os diretrios e seus subdiretrios e ficheiros. A opo -v permite visualizar os detalhes (Verbose em ingls) Exemplo: # cp -Rv /root /tmp (copia o diretrio /root para dentro do diretrio /tmp) # cp -Rv /etc /tmp (copia o diretrio /etc para dentro do diretrio /tmp) # cp -Rv /root/backup / (copia o diretrio backup que est dentro de /root para a raiz do disco) # cp -Rv /usr/local/share/docs . (copia o diretrio docs que est dentro de /usr/local/share para o diretrio em que estou neste momento) O caracter . (ponto) quer dizer o local em que estou Copiar diretrios alterando o nome do destino. Use da seguinte forma: cp diretorio-origem diretorio-destino/novo-nome Exemplo: # cp -Rv /root /tmp/root-renomeado (copia o diretrio /root para dentro do diretrio /tmp com o nome de root-renomeado) # cp -Rv /etc /tmp/etc-novo (copia o diretrio /etc para dentro do diretrio /tmp com o nome de etc-novo) # cp -Rv /root/backup /backup2 (copia o diretrio backup que est dentro de /root para a raiz do disco com o nome de backup2) # cp -Rv /usr/local/share/docs ./documentos (copia o diretrio docs que est dentro de /usr/local/share para o diretrio que em que estou no momento com o nome de documentos) Apagar diretrios com contedo Use aa seguinte forma: rm -Rvf nome-do-diretorio A opo -f quer dizer forar, ou seja, exclui sem perguntas # rm -Rvf numeros (apaga o diretrio numeros) # rm -Rvf /numeros (apaga o diretrio numeros que est na raiz) # rm -Rvf ../numeros (apaga o diretrio numeros que est na no diretrio anterior) # rm -Rvf ../../numeros (apaga o diretrio numeros que est dois diretrios anteriores) # rm -Rvf /tmp/backup (apaga o diretrio backup que est dentro do diretrio /tmp) Observao: Existem duas formas possveis de criar diretrio com espao: 1 - Utilizar aspas # mkdir "Arquivos de Programas" 2 - Utilizar a barra invertida para fazer o "escape" do caracter espao: # mkdir Arquivos\ de\ Programas Da mesma forma que foram criados, podem ser apagados ou movidos com os devidos comandos.

# rmdir "Arquivos de Programas" # rmdir Arquivos\ de\ Programas Visualizar o tamanho de um diretrio Use a seguinte forma: du diretrio Exemplo: # du /etc (Mostra o tamanho individual de cada ficheiro em bytes) # du -s /etc (Mostra a soma em bytes) # du -sh /etc (Mostra o tamanho total em MB)

Manipulao de ficheiros
Material de apoio ficha de trabalho n 3 Para criar um ficheiro vazio Use a seguinte forma: touch nome_do_ficheiro Exemplo: # touch ficheiro_vazio Para alterar o nome a um ficheiro Use a seguinte forma: mv nome-atual novo-nome Exemplo: # mv ficheiro_vazio ficheiro_cheio Para copiar um ou mais ficheiros Use aa seguinte forma: cp nome_do_ficheiro destino Exemplo: # cp ficheiro_cheio /tmp Para apagar ficheiros Use a seguinte forma: rm nome_do_ficheiro Exemplo: # rm ficheiro_cheio Para mover ficheiros Use a seguinte forma: mv nome_do_ficheiro destino Exemplo: # mv ficheiro_cheio /tmp Para visualizar o contedo de um ficheiro Use aa seguinte forma: cat nome_do_ficheiro ou Use a seguinte forma: more nome_do_ficheiro (com pausa) ou Use a seguinte forma: less nome_do_ficheiro (com pausa) - Para sair = q Exemplo: # cat /etc/services ou # more /etc/services ou # less /etc/services Para filtrar Comandos - Use o caracter pipe | Use a seguinte forma: Comando1 | Comando2 | Comando3 | Comando_n

# cat nome_do_arquivo | more # cat nome_do_arquivo | less Exemplo: # cat /etc/services | more (para sair: q) # cat /etc/services | less (para sair: q) Para visualizar as estatsticas de um ficheiro, tais como: Quantidade de Letras, linhas e palavras de um ficheiro. Use a seguinte forma: wc nome_do_ficheiro (exibe quantidade de letras, palavras e linhas) wc -c nome_do_ficheiro (letras) wc -l nome_do_ficheiro (linhas) wc -w nome_do_ficheiro (palavras) Exemplo: # wc nome_do_ficheiro # wc -c /etc/services (exibe a quantidade de letras) # wc -l /etc/services (exibe a quantidade de linhas) # wc -w /etc/services (exibe a quantidade de palavras) Ordenar um ficheiro no ecr Use a seguinte forma: sort nome_do_ficheiro Exemplo: # sort /etc/services # sort -r services (ao contrario) Para mostrar o inicio de um ficheiro (10 primeiras linhas) Use a seguinte forma: head nome_do_ficheiro Exemplo: # head /etc/services Para mostrar o fim de um ficheiro (10 ultimas linhas) Use da seguinte forma: tail nome_do_ficheiro tail -f nome_do_ficheiro (l o fim do ficheiro em tempo real ideal para ler logs em tempo real) Exemplo: # tail /etc/services Para ler um log em tempo real # tail -f /var/log/messages (Em distribuies baseadas em Redhat) ou # tail -f /var/log/syslog (Em distribuies baseadas em Debian) Para filtrar/ pesquisar expresses em ficheiros Use a seguinte forma: grep "expresso" nome_do_ficheiro Exemplo: # grep "FTP" /etc/services # grep -v "FTP" /etc/services (inverso) # grep -n "FTP" /etc/services (numero da linha) # grep -i "FTP" /etc/services (maiscula ou minscula)

Para filtrar a sada de um comando Use a seguinte forma: cut opes nome_do_ficheiro Principais Opes: -c = quantidade de caracteres -f = campo -d = delimitador Exemplo: # cut -c1 /etc/passwd # cut -f1 -d: /etc/passwd (Exibir apenas o nome dos uutilizadores do sistema) Para visualizar mensagens na ecr: Use a seguinte forma: echo "Mensagem" Exemplo: # echo "Exibe uma mensagem no ecr" Para redirecionar as sadas dos comandos > Sobrescreve o arquivo destino >> Adiciona ao arquivo destino < ou << Input Exemplo: # date (Exibe a data no ecr) # date > data.txt (Grava o resultado do comando date no ficheiro data.txt) # tr 'a-z' 'A-Z' < /etc/services # tr 'a-z' 'A-Z' < /etc/services > resultado.txt # echo "Meu nome Joo" > nome.txt Utilizar expresses regulares: * --> Todos os caracteres ? --> Substitui um caracter *.* --> Ficheiros com extenso Exemplo: cp /etc/* /tmp (Copia todos os ficheiros de /etc para /tmp) cp /etc/*.* /tmp (Copia todos os ficheiros de /etc que tenham extenso para /tmp) cp /etc/??? /tmp (Copia todos os ficheiros que tenham 3 letras no nome para /tmp) Para criar variveis Use a seguinte forma: export NOME_VARIAVEL=CONTEUDO Exemplo: # export ALUNO=Jos # export NOME_COMPLETO="Jos da Silva" Para mostrar o contedo das variveis: # echo $ALUNO # echo $NOME_COMPLETO Para mostrar o contedo das variveis e associar uma mensagem s variveis: # echo "O Primeiro nome do Aluno $ALUNO" # echo "O Nome completo do Aluno $NOME_COMPLETO"

10

Para exibir variveis do SHELL atual: # env ou # export Para exibir resultados de comandos junto com possveis mensagens: Exemplo: # echo A Data e Hora atual : `date` # echo "A Data e Hora atual : $(date)" # echo "A Data e Hora atual : $(date)" > data.txt (Grava o contedo deste comando no ficheiro data.txt

11