Linux - comando essenciais João Medeiros ([email protected]) 1 / 22 Links diversos http://wiki.ubuntu-br.org/ComandosBasicos http://www.uniriotec.br/˜morganna/guia/introd guia.html Um guia de referência rápida em uma folha apenas http://files.fosswire.com/2007/08/fwunixref.pdf 2 / 22 Links diversos Sistemas de Arquivos Sistema de arquivos Sistema de arquivos Sistema de arquivos Manipulação de arquivos Pipes e filtros Sistemas de Arquivos 3 / 22 Sistema de arquivos Links diversos Estrutura Sistemas de Arquivos Sistema de arquivos Sistema de arquivos Sistema de arquivos Manipulação de arquivos Pipes e filtros Baseado em estrutura de diretórios em árvore Diretório raiz representado pela ”/” Não existe dependência entre a estrutura lógica dos diretórios e o local onde os arquivos estão fisicamente Modelo permite a integração de diferentes sistemas de arquivos, locais ou remotos, em uma mesma estrutura hierárquica lógica NFS (Network File System) - viabiliza a integração de sistemas de arquivos via rede Varia conforme a implementação do Unix 4 / 22 Sistema de arquivos Links diversos Arquivos Sistemas de Arquivos Sistema de arquivos Sistema de arquivos Sistema de arquivos Manipulação de arquivos Pipes e filtros Ordinários Arquivos binários ou texto ASCII Diretórios Arquivos cujos dados são tabelas de mapeamento dos nomes de arquivos e sub-diretórios Especiais Arquivos especiais de caracter - Representam dispositivos de fluxo de caracter 5 / 22 Sistema de arquivos Links diversos Principais diretórios Sistemas de Arquivos Sistema de arquivos Sistema de arquivos Sistema de arquivos Manipulação de arquivos Pipes e filtros /dev - Diretório de dispositivos /bin - Comandos do usuário /etc - Arquivos de configurações /home - Localização dos diretórios de trabalho dos usuários /tmp - Utilizado para guardar arquivos temporários, normalmente aberto para escrita a todos usuários /var/log - Diversos arquivos de logs do sistema 6 / 22 Links diversos Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Manipulação de arquivos Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 7 / 22 Comando ls Links diversos Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Para uma lista mais completa acesse http://focalinux.cipsga.org.br/guia/iniciante/index.htm Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros Lista conteúdo de um diretório Opções -l: lista os arquivos e atributos -a: lista arquivos ocultos -d: lista atributos do diretório -t: ordena pela data de alteração do arquivo -r: inverte a ordem da ordenação Exemplos ls -l ls -la ls -ltr (para quando existem muitos arquivos em um diretório e estamos interessados nos alterados recentemente) 8 / 22 Comandos cat, more Links diversos cat Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos Exibe o conteúdo dos arquivos especificados Exemplos: cat /etc/hosts cat /etc/passwd more Mesmo que o cat com paginação Exemplos cat /etc/hosts cat /etc/passwd VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 9 / 22 Comandos head, tail Links diversos head Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição Exibe o inı́cio de um arquivo Exemplos: head /etc/passwd head -5 /etc/passwd tail Exibe o final de um arquivo Exemplos: tail /etc/passwd tail -5 /etc/passwd VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 10 / 22 Copiando arquivos - cp Links diversos Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Copia arquivos e diretórios Exemplos cp arquivo.conf arquivo.conf.orig cp /etc/hosts . cp -r /var/home/ /backup Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 11 / 22 Links diversos Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Movendo arquivos mv origem destino Removendo arquivos rm nomearquivo opcoes: -r : remove conteúdo de forma recursiva -i : solicita confirmação antes de remover o arquivo Criando diretórios - mkdir Removendo diretórios vazios - rmdir Mudando de diretório - cd Espaço ocupado pelos arquivos especificados Tamanho do diretório corrente totalizado du -sh . Tamanho do diretório corrente estratificado du -sh * Pipes e filtros 12 / 22 Permissões de arquivos Links diversos Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros Cada arquivo apresenta três categorias de proteção owner group others Cada categoria possui três nı́veis de acesso, que podem ser combinadas r (read) w (write) x (execute) A interpretação varia se o arquivo é ordinário ou diretório Arquivo ordinário r - permite ler e copiar w - permite alterar e eliminar x - permite executar Arquivo diretório r - permite ler (listar o diretório) w - permite criar, renomear e eliminar arquivos do diretório x - permite acessar os arquivos abaixo do diretório drwxr-xr-x 2 joao joao 4096 2008-08-05 01:23 imagens 13 / 22 Comando chmod Links diversos Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Altera permissões de acesso Opções: -R - forma recursiva Exemplos chmod 700 teste.txt chmod uog+x arquivo chmod o-r arquivo Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 14 / 22 Edição de arquivos - VI Links diversos Sistemas de Arquivos Editor de arquivos texto Três modos: comandos, edição e linha Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 15 / 22 VI - modo de comandos Links diversos Utilize para movimentar-se no texto, apagar linhas, pesquisar, etc. Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros Movimentação setas, k-cima, j-baixo, l-direita, h-esquerda CTRL-f Próxima tela CTRL-b Tela anterior 0 Inı́cio da linha $ Final da linha Pesquisando / palavra a ser pesquisada n próxima ocorrência Removendo linhas dd Remove linha atual ndd Remove n linhas a partir da linha atual u desfaz a última alteração 16 / 22 VI - Modo de edição Links diversos Para entrar no modo de edição pressione: Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod i - insere a partir da posição atual a - insere a partir da próxima posição A - insere a partir do final da linha Para sair do modo de edição e retornar ao modo de comandos, pressione ESC Durante a edição as teclas de movimento não funcionam no vi, utilize o vim se preferir Edição de arquivos - VI VI - modo de comandos VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 17 / 22 VI - Modo de linha Links diversos Para entrar no modo de linha, pressione : (dois pontos) Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos w - salva o arquivo q - sai do vi q!- sai sem salvar alterações wq - salva e sai do vi wq! - força a gravação em arquivos protegidos e sai 1,20 s/texto1/texto2/cg - substitue da linha 1 até a 20 todas as ocorrências de texto1 por texto2 solicitando confirmação %s/texto1/texto2/cg - substitue em todo o arquivo as ocorrências de texto1 por texto2 solicitando confirmação VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 18 / 22 Compactação de arquivos - tar, gzip Links diversos Sistemas de Arquivos Manipulação de arquivos Comando ls Comandos cat, more Comandos head, tail Copiando arquivos - cp Permissões de arquivos Comando chmod Edição de arquivos - VI VI - modo de comandos tar - utilitário para arquivamento de arquivos gzip - compactador de arquivos Podemos usar os dois ao mesmo tempo, ex: compactar o diretório /home/fatern/imagens # cd /home/fatern # tar czf imagens.tgz imagens Para descompactar um arquivo .tgz, utilize a opção tzf para ver o conteúdo # tar tzf imagens.tgz e depois a opção xzf para efetuar a extração # tar xzf imagens.tgz VI - Modo de edição VI - Modo de linha Compactação de arquivos - tar, gzip Pipes e filtros 19 / 22 Links diversos Sistemas de Arquivos Manipulação de arquivos Pipes e filtros Pipes e filtros Exercı́cios Pipes e filtros 20 / 22 Pipes e filtros Links diversos Sistemas de Arquivos Manipulação de arquivos Pipes e filtros Pipes e filtros Exercı́cios Podemos encadear uma sequência de comandos com o pipe "|" O comando grep é utilizado para filtrar conteúdos Exemplos # ls /home | grep fatern - lista os arquivos que contêm fatern em seu nome # cat /etc/passwd | grep fatern - mostra os usuários que contêm fatern na sua descrição # cat /etc/passwd | wc -l - conta as linhas de um arquivo 21 / 22