unix: comandos básicos

28
UNIX: Comandos UNIX: Comandos Básicos Básicos INE5602 Introdução à INE5602 Introdução à Informática Informática Prof. Roberto Willrich Prof. Roberto Willrich

Upload: nell

Post on 22-Jan-2016

90 views

Category:

Documents


1 download

DESCRIPTION

UNIX: Comandos Básicos. INE5602 Introdução à Informática Prof. Roberto Willrich. Terminologia e Conceitos. Login name/Login ID Cada usuário do UNIX tem um nome (user name) previamente cadastrado para permitir o seu acesso ao sistema Atributos mantidos pelo UNIX para cada usuário - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: UNIX: Comandos Básicos

UNIX: Comandos UNIX: Comandos BásicosBásicos

INE5602 Introdução à InformáticaINE5602 Introdução à Informática

Prof. Roberto WillrichProf. Roberto Willrich

Page 2: UNIX: Comandos Básicos

2

Terminologia e Conceitos Terminologia e Conceitos

Login name/Login IDLogin name/Login ID– Cada usuário do UNIX tem um nome (user name)Cada usuário do UNIX tem um nome (user name)

• previamente cadastrado para permitir o seu acesso ao previamente cadastrado para permitir o seu acesso ao sistemasistema

– Atributos mantidos pelo UNIX para cada usuárioAtributos mantidos pelo UNIX para cada usuário• Nome de login Nome de login • Identificação do usuário (UID)Identificação do usuário (UID)• Senha secretaSenha secreta• Grupos ao qual ele pertenceGrupos ao qual ele pertence• Comentário livre sobre o usuário (nome completo, Comentário livre sobre o usuário (nome completo,

função, setor, ...)função, setor, ...)• Diretório Home: um lugar no sistema de arquivos que Diretório Home: um lugar no sistema de arquivos que

será de propriedade do usuárioserá de propriedade do usuário• Seu interpretador de comandos (tcsh)Seu interpretador de comandos (tcsh)

Page 3: UNIX: Comandos Básicos

3

Terminologia e Conceitos Terminologia e Conceitos

SuperusuárioSuperusuário– é aquele usuário com permissões irrestritasé aquele usuário com permissões irrestritas

• administrador do sistema administrador do sistema – suas funções (contacte pela [email protected])suas funções (contacte pela [email protected])

• tem por funções o cadastramento de outros usuários, tem por funções o cadastramento de outros usuários, instalação dos softwares para que todos usem, instalação dos softwares para que todos usem, configuração do sistema, avaliação e gerência da configuração do sistema, avaliação e gerência da desempenho e segurança e responsável pela execução desempenho e segurança e responsável pela execução dos backupsdos backups

– nome de login do administrador é rootnome de login do administrador é root• palavra “root” significa raiz, em alusão ao diretório mais palavra “root” significa raiz, em alusão ao diretório mais

importante do sistema de arquivosimportante do sistema de arquivos

Page 4: UNIX: Comandos Básicos

4

Terminologia e Conceitos Terminologia e Conceitos

Sessão de TrabalhoSessão de Trabalho– Para ter acesso ao sistema Para ter acesso ao sistema

• usuário precisa fazer parte de pelo menos um grupo, ter usuário precisa fazer parte de pelo menos um grupo, ter um nome de usuário (login) e uma senhaum nome de usuário (login) e uma senha

– Use SSH – Securite ShellUse SSH – Securite Shell• fornece serviços segurosfornece serviços seguros

– Ao ligar o terminalAo ligar o terminal• aparece o prompt de login “login:”aparece o prompt de login “login:”• usuário entra com seu nome e sua senha e abre uma usuário entra com seu nome e sua senha e abre uma

sessão de trabalho sessão de trabalho • use logout (ou exit) para encerrar a sessão de trabalhouse logout (ou exit) para encerrar a sessão de trabalho

– pois ninguém poderá usar aquele terminal e danificar seus pois ninguém poderá usar aquele terminal e danificar seus arquivosarquivos

Page 5: UNIX: Comandos Básicos

5

Terminologia e Conceitos Terminologia e Conceitos

Prompt do shellPrompt do shell–   Ao abrir uma sessão de trabalhoAo abrir uma sessão de trabalho

• um prompt é apresentado ao usuário indicando que o um prompt é apresentado ao usuário indicando que o shell (interpretador de comandos) está pronto para shell (interpretador de comandos) está pronto para executar o próximo comando. executar o próximo comando.

– Prompt é representado pelo símbolo $, para o usuário Prompt é representado pelo símbolo $, para o usuário comum e # para o superusuáriocomum e # para o superusuário

– Cada usuário pode alterar seu prompt para um de sua Cada usuário pode alterar seu prompt para um de sua preferênciapreferência

• coloca-se o diretório corrente para indicar onde ele se coloca-se o diretório corrente para indicar onde ele se encontra encontra

– set prompt="%S%m%s[%c]“set prompt="%S%m%s[%c]“

– set prompt="`hostname`:`pwd` \! % “set prompt="`hostname`:`pwd` \! % “

– set prompt="`hostname`:`whoami` \! % " set prompt="`hostname`:`whoami` \! % "

Page 6: UNIX: Comandos Básicos

6

PromptPrompt Prompt do shellPrompt do shell

– %B %b colocar em negrito %B %b colocar em negrito – %C nome do diretório corrente %C nome do diretório corrente – %d dia da semana %d dia da semana – %D dia do mes %D dia do mes – %h número do %h número do historyhistory – %M nome da máquina (igual `hostname`) %M nome da máquina (igual `hostname`) – %n login do usuário (igual $USER) %n login do usuário (igual $USER) – %p hora com segundos (am/pm) %p hora com segundos (am/pm) – %P hora com segundos (24h) %P hora com segundos (24h) – %S %s inversão das cores %S %s inversão das cores – %t hora sem segundos (am/pm) %t hora sem segundos (am/pm) – %T hora sem segundos (24h) %T hora sem segundos (24h) – %U %u sublinhas %U %u sublinhas – %w mês (3 letras) %w mês (3 letras) – %W mês (número) %W mês (número) – %y ano (2 últimos números) %y ano (2 últimos números) – %Y année (4 números) %Y année (4 números) – %# símbolo '>' %# símbolo '>' – \! numéro \! numéro historyhistory – %/ path %/ path – %% simbolo '%' %% simbolo '%' – %~ path a partir de ~user %~ path a partir de ~user – %. Diretório corrente %. Diretório corrente

Page 7: UNIX: Comandos Básicos

7

PromptPrompt

Exercício: definir o prompt abaixo:

Page 8: UNIX: Comandos Básicos

8

ComandosComandos

Manual “on-line”Manual “on-line”– comando “man” dá acesso ao manual de comando “man” dá acesso ao manual de

referência on-line oferecido pelo sistemareferência on-line oferecido pelo sistema• poderemos ter um “help” mostrando descrições poderemos ter um “help” mostrando descrições

técnicas a respeito dos comandostécnicas a respeito dos comandos– Para chamar o “man”, basta digitar:Para chamar o “man”, basta digitar:

• $ man comando$ man comando• Exemplos: Exemplos: $ man ls$ man ls

$ man man $ man man

Page 9: UNIX: Comandos Básicos

9

Comandos Comandos

Alterando sua passwordAlterando sua password– Administrador pode definir algum tempo limite Administrador pode definir algum tempo limite

para uso da senha do usuáriopara uso da senha do usuário• depois desse tempo, a senha expira e ele é depois desse tempo, a senha expira e ele é

obrigado a trocá-laobrigado a trocá-la– Senha representa um fator enorme na busca Senha representa um fator enorme na busca

pela segurançapela segurança• é a assinatura eletrônica de cada usuárioé a assinatura eletrônica de cada usuário• não use palavras obviasnão use palavras obvias

– utilize símbolos, números, maiúsculas e minúsculasutilize símbolos, números, maiúsculas e minúsculas

– use “passwd” para alterar sua senhause “passwd” para alterar sua senha

Page 10: UNIX: Comandos Básicos

10

ComandosComandos

clearclear– limpa a telalimpa a tela

whowho– Informa quais usuários estão ativos no sistemaInforma quais usuários estão ativos no sistema

whoamiwhoami– Informa qual o seu login nameInforma qual o seu login name

ww– Lista usuários e o que eles estão fazendoLista usuários e o que eles estão fazendo

fingerfinger– Lista de usuários logadosLista de usuários logados

rusersrusers– Lista todos os usuários do sistemaLista todos os usuários do sistema

finger username[@hostname]finger username[@hostname]– apresentações de usuários locais ou remotosapresentações de usuários locais ou remotos

Page 11: UNIX: Comandos Básicos

11

ComandosComandos

Exercício: Procurando alguém no INEExercício: Procurando alguém no INE– Encontrar o nome completo e email de Pedro Encontrar o nome completo e email de Pedro

Chaves.Chaves.– Quais pessoas estão usando a máquina juno?Quais pessoas estão usando a máquina juno?

Page 12: UNIX: Comandos Básicos

12

Terminologia e Conceitos Terminologia e Conceitos

Diretório HOMEDiretório HOME– Quando o sistema aceita o loginQuando o sistema aceita o login

• usuário é colocado em um lugar pré-definido usuário é colocado em um lugar pré-definido dentro do sistema de arquivos - o diretório dentro do sistema de arquivos - o diretório HOMEHOME

– /home/sin/seunome/home/sin/seunome

• isto evita que vários usuários usem um mesmo isto evita que vários usuários usem um mesmo diretório e deixa-o livre para fazer o que quiser diretório e deixa-o livre para fazer o que quiser dentro do seu “espaço”dentro do seu “espaço”

Page 13: UNIX: Comandos Básicos

13

ComandosComandos

lsls– lista arquivos do diretóriolista arquivos do diretório– Algumas opções do ls são muito importantes: Algumas opções do ls são muito importantes:

• -l: apresenta o tipo do arquivo, suas -l: apresenta o tipo do arquivo, suas permissões, proprietário, tamanho, data da permissões, proprietário, tamanho, data da última modificação e nome do arquivo (entre última modificação e nome do arquivo (entre outros)outros)

• -a: mostra todos os arquivos do diretório, -a: mostra todos os arquivos do diretório, inclusive aqueles cujo nome começa com “.” inclusive aqueles cujo nome começa com “.” (arquivos ocultos)(arquivos ocultos)

• -R: lista, recursivamente, todos os subdiretórios -R: lista, recursivamente, todos os subdiretórios abaixo do diretório solicitadoabaixo do diretório solicitado

Page 14: UNIX: Comandos Básicos

14

ComandosComandos Comando para diretórioComando para diretório

– pwdpwd• Informa o diretório correnteInforma o diretório corrente• exemplo: $ pwdexemplo: $ pwd

– cdcd• Muda o diretório correnteMuda o diretório corrente• exemplo: $ cd /tmpexemplo: $ cd /tmp• $ cd ..$ cd ..

– mkdirmkdir• Cria os diretórios informadosCria os diretórios informados• exemplo: $ mkdir doc fontes exemplo: $ mkdir doc fontes

– rmdirrmdir• Remove diretórios informadosRemove diretórios informados• exemplo: $ rmdir lixo doc/oldexemplo: $ rmdir lixo doc/old

– mvdirmvdir• Muda o lugar de um diretório (move)Muda o lugar de um diretório (move)• exemplo: $ mvdir proj/cdf/doc proj/sgt/docexemplo: $ mvdir proj/cdf/doc proj/sgt/doc

Page 15: UNIX: Comandos Básicos

15

ComandosComandos

ExercíciosExercícios– Crie o diretório ~/tmp/ e ~/aula/Crie o diretório ~/tmp/ e ~/aula/– Crie o diretório ~/tmp/lixo/Crie o diretório ~/tmp/lixo/– Troque o nome de ~/tmp/lixo/ por ~/tmp/teste/Troque o nome de ~/tmp/lixo/ por ~/tmp/teste/– Mude o diretório ~/tmp/teste para ~/aula/testeMude o diretório ~/tmp/teste para ~/aula/teste

Page 16: UNIX: Comandos Básicos

16

ComandosComandos

Comandos de manipulação de arquivosComandos de manipulação de arquivos– Copia arquivos: cp Copia arquivos: cp arq1 arq2arq1 arq2– Apaga arquivos: rm Apaga arquivos: rm arq1arq1– Edita arquivos: vi Edita arquivos: vi arq ou arq ou picopico arg arg– Cria um arquivo: catCria um arquivo: cat >arquivo >arquivo– Concatena dois arquivos: catConcatena dois arquivos: cat arq1 arq2 > arq3 arq1 arq2 > arq3– Acha texto em arquivos: grep Acha texto em arquivos: grep

• exemplo grep –i –n exemplo grep –i –n palavra arquivopalavra arquivo– Mostra conteúdo de arquivo: cat Mostra conteúdo de arquivo: cat arq1arq1– Mostra uma tela por vez: more Mostra uma tela por vez: more arq1arq1– Muda nome de arquivos: mv Muda nome de arquivos: mv arq1 arq2arq1 arq2

Page 17: UNIX: Comandos Básicos

17

Alguns arquivos especiaisAlguns arquivos especiais

.project.project– Permite especificar um projeto na qual Permite especificar um projeto na qual

trabalhamostrabalhamos .plan.plan

– Permite escrever uma texto no fingerPermite escrever uma texto no finger .signature.signature

– Assinatura de emailAssinatura de email

Page 18: UNIX: Comandos Básicos

18

ExercíciosExercícios

Crie um arquivo ~/aula/arq1 com o texto Crie um arquivo ~/aula/arq1 com o texto este eh o conteudo de arq1este eh o conteudo de arq1

Crie um arquivo ~/aula/arq2 com o texto Crie um arquivo ~/aula/arq2 com o texto este eh o conteudo de arq2este eh o conteudo de arq2

Concatene o conteúdo de arq1 com arq2 e Concatene o conteúdo de arq1 com arq2 e coloque em arq3 coloque em arq3

Verifique se há a palavra Government no Verifique se há a palavra Government no arquivo /usr/java/Licencearquivo /usr/java/Licence

Edite um arquivo chamado .project Edite um arquivo chamado .project colocando uma mensagem para as colocando uma mensagem para as pessoas que fizerem finger sobre vocêpessoas que fizerem finger sobre você

Page 19: UNIX: Comandos Básicos

19

ComandosComandos

Proteção de Arquivos e DiretóriosProteção de Arquivos e Diretórios– Direitos de um arquivos podem ser vistos com: Direitos de um arquivos podem ser vistos com: 

• $ ls -l$ ls -l• -rw-rw-r-- 1 root 48 Jun 17 08:34 arp_data-rw-rw-r-- 1 root 48 Jun 17 08:34 arp_data• drwxrwx--x 4 autor 80 Mar 28 09:40 autordrwxrwx--x 4 autor 80 Mar 28 09:40 autor

– Primeiro caractere indica o tipo do arquivo: Primeiro caractere indica o tipo do arquivo: • comum (-)comum (-)

– Armazena textos, executáveis, programas, etcArmazena textos, executáveis, programas, etc

– Criados livremente pelo usuárioCriados livremente pelo usuário

• diretório (d)diretório (d)• link (l) link (l) • especial (c, b)especial (c, b)

– Associado a impressora, disco flexível, etcAssociado a impressora, disco flexível, etc

– Criados e mantidos pelo sistema Criados e mantidos pelo sistema

Page 20: UNIX: Comandos Básicos

20

ComandosComandos

Proteção de Arquivos e DiretóriosProteção de Arquivos e Diretórios– Direitos de um arquivos podem ser vistos com: Direitos de um arquivos podem ser vistos com: 

• $ ls -l$ ls -l• -rw-rw-r-- 1 root 48 Jun 17 08:34 arp_data-rw-rw-r-- 1 root 48 Jun 17 08:34 arp_data• drwxrwx--x 4 autor 80 Mar 28 09:40 autordrwxrwx--x 4 autor 80 Mar 28 09:40 autor

– Nove caracteres seguintes indicam as permissões para Nove caracteres seguintes indicam as permissões para os arquivosos arquivos

• -rwx rwx rwx-rwx rwx rwx

dono grupo outrosdono grupo outros• r - read (leitura); w - write (gravação); x - execute r - read (leitura); w - write (gravação); x - execute

(execução) e um traço (-) significa a sua negação(execução) e um traço (-) significa a sua negação

Page 21: UNIX: Comandos Básicos

21

ComandosComandos

Alterando o dono e o grupo do arquivoAlterando o dono e o grupo do arquivo– é realizada pelo dono atual ou pelo é realizada pelo dono atual ou pelo

superusuário superusuário – mudança de donomudança de dono

• chown (change owner)chown (change owner)• Sintaxe: chown novopropriet arq1 arq2 ... arqnSintaxe: chown novopropriet arq1 arq2 ... arqn•   Exemplo: $ chown root relatorioExemplo: $ chown root relatorio

– Para alterar o grupo ao qual pertence um Para alterar o grupo ao qual pertence um arquivoarquivo• chgrp (change group)chgrp (change group)• Sintaxe: chgrp novogrupo arq1 arq2 ... arqnSintaxe: chgrp novogrupo arq1 arq2 ... arqn• Exemplo: $ chgrp projeto relatorioExemplo: $ chgrp projeto relatorio

Page 22: UNIX: Comandos Básicos

22

ComandosComandos

Alterando as permissõesAlterando as permissões– mudança das permissões de acesso a um mudança das permissões de acesso a um

arquivo é feita através do comando chmodarquivo é feita através do comando chmod– Modo intuitivo de utilizá-lo é: Modo intuitivo de utilizá-lo é:

• chmod u/g/o/a +/-/ r/w/x arqchmod u/g/o/a +/-/ r/w/x arq– onde: onde:

» u: proprietário; g: grupo; o: outros; a: todos u: proprietário; g: grupo; o: outros; a: todos » +: libera; -: bloqueia;+: libera; -: bloqueia;» r: leitura; w: escrita; x: execuçãor: leitura; w: escrita; x: execução

– Exemplos:Exemplos:• $ chmod ug+w relatorio$ chmod ug+w relatorio• $ chmod o-rw+x arq1$ chmod o-rw+x arq1

Page 23: UNIX: Comandos Básicos

23

ExercíciosExercícios

Crie um arquivo ~/aula/lixoCrie um arquivo ~/aula/lixo– Dê permissão de escrita para o seu grupo e para outrosDê permissão de escrita para o seu grupo e para outros– Apague ou altere o arquivo de seu colegaApague ou altere o arquivo de seu colega

Crie um arquivo ~/public_html/index.htmlCrie um arquivo ~/public_html/index.html– ConteúdoConteúdo

<html><html><head><head>

<title> Página de ..(seu nome)....</title><title> Página de ..(seu nome)....</title></head></head><body> <body>

Página em Construção Página em Construção </body></body>

</html></html> Execute o browser e visite sua páginaExecute o browser e visite sua página

– Em http://www.inf.ufsc.br/~<seulogin>Em http://www.inf.ufsc.br/~<seulogin>

Page 24: UNIX: Comandos Básicos

24

Comandos Comandos

Manipulação de Processos Manipulação de Processos – Processos são numerados dinamicamente, Processos são numerados dinamicamente,

possuindo um número único de identificação possuindo um número único de identificação chamado process id (PID)chamado process id (PID)

– ComandosComandos• ps: verifica os processos em execuçãops: verifica os processos em execução

– opções:opções:» -a : lista todos os processos-a : lista todos os processos» -u : identifica o usuário-u : identifica o usuário» -x : usa um formato detalhado-x : usa um formato detalhado

– exemplo: ps -aux | grep seunomeexemplo: ps -aux | grep seunome

• kill: interrompe a execução de um processokill: interrompe a execução de um processo– kill IDdoProcessokill IDdoProcesso

Page 25: UNIX: Comandos Básicos

25

Funções de apoio aos Funções de apoio aos utilitários utilitários Redirecionamento de Entrada e Saída Redirecionamento de Entrada e Saída

– Entrada e saída do terminal: entrada padrão (stdin), Entrada e saída do terminal: entrada padrão (stdin), saída padrão (stdout) e saída padrão para erro (stderr)saída padrão (stdout) e saída padrão para erro (stderr)

– shell permite o desvio destas E/S para arquivos comuns shell permite o desvio destas E/S para arquivos comuns ou até dispositivosou até dispositivos

• Desvio da Entrada Padrão < Desvio da Entrada Padrão < – exemplo: cat <arquivoexemplo: cat <arquivo

• Saída Padrão > ou >> (append)Saída Padrão > ou >> (append)– exemplo: cat >arquivoexemplo: cat >arquivo finger nome > lixo finger nome > lixo who > arqusuarioswho > arqusuarios cat <arqc >>lixocat <arqc >>lixo

ls >/dev/diskettels >/dev/diskette

• Saída Padrão de Erro 2> ou 2>> (append)Saída Padrão de Erro 2> ou 2>> (append)– exemplo: rm arquivo 2>arqerroexemplo: rm arquivo 2>arqerro

Page 26: UNIX: Comandos Básicos

26

Funções de apoio aos Funções de apoio aos utilitários utilitários Encadeamento de Comandos – PipelinesEncadeamento de Comandos – Pipelines

– permite conectar a saída de um comando com permite conectar a saída de um comando com a entrada de outroa entrada de outro

– sinal utilizado para um pipe é a barra vertical sinal utilizado para um pipe é a barra vertical “|”“|”

– exemplos:exemplos:• finger silva | morefinger silva | more

– mesmo que finger silva > lixo ; more lixo ; rm lixomesmo que finger silva > lixo ; more lixo ; rm lixo

• ls | grep pu ls | grep pu – mesmo que: ls > lixo ; grep pu lixo ; rm lixomesmo que: ls > lixo ; grep pu lixo ; rm lixo

• finger silva | grep –i fernandafinger silva | grep –i fernanda

Page 27: UNIX: Comandos Básicos

27

ComunicaçãoComunicação

talk– Permite a comunicação interativa entre duas pessoas. Para

estabelecer a conexão é necessário conhecer o host onde a outra pessoa se encontra.

– Exemplo: talk nomelogin@venus write

– Escreve uma mensagem no terminal de um usuário.– Exemplo: write sincero

• Bla• ^C

mesg– Habilita ou desabilita a recepção de mensagens

• mesg n• mesg y

Page 28: UNIX: Comandos Básicos

28

EmailEmail

Pine– Aplicativo mais utilizado para ler emails no Aplicativo mais utilizado para ler emails no

UnixUnix– Ver aula práticaVer aula prática

Outros leitoresOutros leitores– Ver modo de configuração em Ver modo de configuração em

http://www.inf.ufsc.br/~admredehttp://www.inf.ufsc.br/~admrede