Buscar

CursoLinux-Aula1_basico

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 32 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Especialização em Redes de Computadores e Segurança
Comandos básicos
“Meu Deus do Shell!
Porque eu não optei pelo Linux antes?”1 
 [1] NEVES, Júlio César
Introdução
Fundamentos de Shell
Comandos básicos
Conteúdo programático – Módulo LPIConteúdo programático – Módulo LPI
 
O que é Shell Script?O que é Shell Script?
 Shell é uma interface textual que interpreta os 
comandos existentes em um sistema operacional 
e os envia ao kernel imprimindo posteriormente o 
resultado do processamento na tela.
 “Embora seja verdade que haja ferramentas GUI 
 disponíveis para gerenciar praticamente tudo em um 
 sistema GNU/Linux, você precisa ter conhecimento 
sólido sobre utilitários de linha de comando para se 
 preparar melhor para se trabalhar com qualquer 
distribuição Linux.” (PRITCHARD; PESSANHA; STANGER;
 DEAN; LANGFELDT, 2007,P. 53)
 
O que é Shell Script?O que é Shell Script?
 O SHELL original para sistemas UNIX foi escrito por 
Steve Bourne e se chamava simplesmente sh. O 
SHELL padrão de sistemas Linux é o BASH (BOURNE-
AGAIN SHELL), que é uma variante GNU de sh.
 
O que é Shell Script?O que é Shell Script?
 Shell, é um interpretador de comandos que analisa 
o texto digitado na linha de comando e os executam.
 Na linha de comandos de um shell, podemos utilizar 
diversos comandos um após o outro, ou mesmo 
combiná-los numa mesma linha ( ; && | tee \ ). Se 
colocarmos diversas linhas de comandos em um 
arquivo texto simples, teremos em mãos um Shell 
Script, ou um script em shell.
 
Existe mais de um Shell?Existe mais de um Shell?
Exemplos de Shell:
● csh: É a shell mais utilizada em sistemas como *BSD ou Xenix. A sua 
estrutura de comandos é similar á Linguagem C.
● sh: Ou Bourne Shell é a shell pré-defenida com o Unix (1977). Desde a 
versão 7 substituindo a tcsh, esta costuma a ser a shell pré-defenida para 
o root.
● bash: (Bourne-Again SHell) Muito similar a sh, esta é a shell mais utilizada 
por conter características como: Auto-Complete, podemos personalizar 
todo o output de uma forma simples,entre outras....
● tcsh: Compatível e semelhante a csh.
● ksh: Considerada a mais popular no sistema Unix, tendo todas as funções 
do sh. Korn Shell foi a primeira a introduzir recursos avançados.
● zsh: Z Shell tem como grande vantagem um enorme interpretador de 
comandos 
 
E os interpretadores de comandos?E os interpretadores de comandos?
 Interpretadores de comandos são programas de computador responsáveis 
por tomar as ações efetivas conforme a orientação do usuário através de 
comunicação textual. Exemplos de Interpretadores de comandos:
● csh
● sh
● bash
● tcsh
● ksh
● zsh
● python
● perl
● expect
● awk
● Basic
● Vbscript
● PHP
 
Qual a diferença entre um compilador e um interpretador?Qual a diferença entre um compilador e um interpretador?
Compilador: É um programa responsável por gerar, a partir de de um 
programa escrito em linguagem de alto nível, um programa em 
linguagem de máquina, não executável. As linguagens de alto nível 
não possuem nenhuma relação direta com a máquina, fcando esta 
preocupação para o compilador. Exemplos: C, C++, Delphi, Visual 
Basic, etc ... 
Interpretador: Interpretador é considerado um tradutor que não 
gera código objeto. A partir de um programa fonte, escrito em 
linguagem de alto nível, o interpretador, no momento da execução do 
programa, traduz cada instrução e a executa em seguida. Exemplo de 
linguagens interpretadas: bash, sh, basic, VBscript, PHP, etc...
Linguagens “Híbridas”: Interpretada e compilada. Ex. Python, java.
 
Onde encontro o Shell?Onde encontro o Shell?
 O Sistema Operacional é o código executor das 
chamadas de sistemas.
 
Onde encontro o Shell?Onde encontro o Shell?
 Shell é fundamentalmente uma interface entre o 
Sistema Operacional e o seu usuário.
 
Como funciona um Shell?Como funciona um Shell?
 Para inicarmos os estudos sobre Shell Script vamos 
utilizar o bash (/sbin/bash).
 O BASH permite a execução de seqüências de 
comandos direto no prompt do sistema ou escritas em 
arquivos de texto, conhecidos como shell scripts.
 O BASH é o shell desenvolvido para o projecto GNU, 
da Free Software Foundation, que se tornou padrão nas 
várias distribuições Linux. Pode ser usado também com 
outros sistemas operacionais, como o Unix. É compatível 
com o Bourne shell (sh), incorporando os melhores 
recursos do C shell (csh) e do Korn Shell (ksh).
 
Como funciona um Shell?Como funciona um Shell?
 Pode-se pode customizar o ambiente do bash utilizando 
alguns arquivos/diretórios como:
● /etc/profle
● /etc/skel
● .bash_profle
● .bash_rc
 Importante: Nos sistemas GNU/Linux nomes de arquivos 
são case-sensitive, ou seja, distinguem maiúsculas de 
minúsculas e vice-versa.
TESTE != Teste != teste
 
Como funciona um Shell?Como funciona um Shell?
 O ambiente de uma sessão SHELL tem seu 
comportamento alterado de acordo com o conteúdo de 
algumas variáveis de ambiente, por exemplo:
 BASH
 HOSTNAME
 USER 
 USERNAME
 PATH
 PS1
 PS2
 DISPLAY 
 SHELL 
 HISTFILE
 HISTFILESIZE
 
Como funciona um Shell?Como funciona um Shell?
Designadores de expansão de histórico
!! - chama o último comando utilizado
History - mostra o histórico de comandos
!n - refere-se ao número n do histórico
!-n - comando atual -n do histórico
!string - refere-se ao último comando que 
 começa com a string (expressão)
!?string - refere-se ao último comando que 
 contenha a string (expressão)
^string1^string2 - repete o último comando substituindo 
 a ocorrência string1 por string2
 
Como funciona um Shell?Como funciona um Shell?
 Um comando para ser interpretado é dividido em 
partes distintas:
 
 parana@acer:~$ ps -aux | grep bash
 1ª parte) comando, o shell identifca se o arquivo 
existe no PATH e se o usuário possui privilégios sufcientes 
para executá-lo;
 2ª parte) identifca por espaços quais são os 
parâmetros/argumentos. Esses alteram de alguma forma o 
comportamento durante a execução e/ou saída do 
comando;
 3ª parte) saída (direcionamento/pipe) que permite ao 
usuário receber o retorno da execução, seja saída padrão 
ou alguma mensagem de erro/advertência;
 
Como funciona um Shell?Como funciona um Shell?
Onde encontrar um terminal num sistema GNU/Linux?
● Os consoles são levantados pelo init na inicialização do sistema:
/etc/inittab
● Controlados pelo getty (/sbin/getty) que abre um novo processo 
para controlar uma porta ttyX (/dev/ttyX)
● Por padrão são defnifos 6 consoles virtuais:
/dev/tty1 CRTL+ALT+1
/dev/tty2 CRTL+ALT+2
/dev/tty3 CRTL+ALT+3
/dev/tty4 CRTL+ALT+4
/dev/tty5 CRTL+ALT+5
/dev/tty6 CRTL+ALT+6
● Como em todo sistema GNU/Linux é necessário que se realize a 
autenticação antes de iniciar o uso.
 
Como funciona um Shell?Como funciona um Shell?
Onde encontrar um terminal num sistema Gráfco?
● O xterm é um emulador de terminais leve e direto;
● Comando para instalação no Debian: apt-get install xterm
● A variável de ambiente $TERM por padrão defne xterm como 
terminal a ser utilizado por diversos sistemas.
 
Como funciona um Shell?Como funciona um Shell?
gnome-terminal
● O gnome-terminal é o terminal padrão do Gnome (ambiente de 
trabalho gerenciado pelo servidor Xorg);
● Onde encontro? Menu: Aplicações – Acessórios – Terminal
● A variável de ambiente $COLORTERM defne o gnome-terminal 
como o terminal padrão.
 
Como funciona um Shell?Como funciona um Shell?
konsole
● O konsole é o terminal padrão do KDE (ambiente gráfco 
gerenciadopelo servidor Xorg);
● Onde encontro? KDE-Menu: Sistemas – Konsole
● O Konsole permite múltiplas sessões em abas, histórico, impressão 
e favoritos.
 
Comandos BásicosComandos Básicos
$ <comando> --help $ free $ continua . . .
$ man <comando> $ locate
$ ls $ fnd
$ cat $ uptime
$ cd $ alias
$ mkdir $ touch
$ rm $ sort 
$ rmdir $ uniq
$ date $ ln
$ su $ uname
$ du $ wc 
$ df $ tar 
 
Comandos BásicosComandos Básicos
$ <comando> --help Mostra os principais paramêtros e forma de uso
$ man <comando> Manual on-line do comando
 -t <manpage> | ps2pdf14 - <arquivo>.pdf
$ ls Lista o conteúdo de um diretório
 -l -la -lh -lha -R 
$ cat Lista o conteúdo de um arquivo de texto
 -n -b -T
$ cd Alterna entre um diretório e outro
 
Comandos BásicosComandos Básicos
$ mkdir Cria um novo diretório
 -p -v -m=600
$ rm Deleta arquivos e diretórios
 -r -f -rf -i -v
$ rmdir Deleta diretórios vazios
$ date Mostra e altera a data/hora do sistema
 +FORMATO %H %M %d %m %Y . . .
 $ date mesdiahoraminuto[segundo][ano]
 
Comandos BásicosComandos Básicos
$ su Alterna entre um usuário e outro no sistema
 - -c <comando> -s SHELL
$ du Mostra o uso do disco por um arquivo ou diretório
 -s -h -sh 
$ df Mostra o status sobre partições em uso, ou da partição 
onde um determinado arquivo está armazenado.
 -h -a [arquivo]
 
Comandos BásicosComandos Básicos
$ free Mostra uso de memória RAM (/proc/meminfo)
 -b -k -m -g 
$ locate <string> localiza um arquivo ou diretório (updatedb)
 Base: /var/cache/locate/locatedb
 
$ fnd localiza um arquivo ou diretório
 -name -iname -a -o
 -size -type -perm -cmin -ctime -mtime -regex -gid -group
 -printf
 -exec <comando> {} \;
 
Comandos BásicosComandos Básicos
$ uptime tempo desde que a maquina iniciou
$ alias mostra e cria um “atalho” para um comando/parametros
$ touch altera data criação/alteração de um arquivo
 -c -t -a -m
$ sort exibe de forma a ordenar o conteúdo de um arquivo
 -u -n -r 
 
Comandos BásicosComandos Básicos
$ uniq oculta linhas repetidas
$ ln cria links simbólicos e hard links
 -s 
$ uname exibe informações sobre o sistema, como a versão do Kernel
 -r -a
$ wc realiza a contagem de linhas, palavras e caracteres
 -l -c -m -w
$ tar empacota arquivos/diretórios em um único arquivo
 -cvzf -zvxf -cvjf -zvjf -rf -tf
 
Comandos BásicosComandos Básicos
Exercícios de Fixação
1) De que forma você poderia descobrir em que diretório você está?
2) Qual a diferença entre ( cd / cd .. cd)?
3) Diferencie caminho absoluto e caminho relativo.
4) Qual a seqüência de comando para criar um subdiretório (teste) em 
/home?
5) Como criar 5 diretórios hierárquicos de uma única vez (Ex. 
/home/teste/aula/gerds/pos/aula1)?
6) Crie um hard link para arquivo /etc/profle em /tmp/profle.
7) Crie um soft link para o arquivo /etc/resolv.conf em /tmp/dns.
8) Qual a diferença encontrada entre soft link e hard link?
 
RedirecionamentoRedirecionamento
Operador Ação
 < Redireciona a entrada padrão (STDIN)
 > Redireciona a saída padrão (STDOUT )
 2> Redireciona a saída de erro (STDERR)
 >> Redireciona a saída padrão, anexando
 2>> Redireciona a saída de erro, anexando
 | Conecta a saída padrão com a entrada padrão de outro comando
 2>&1 Conecta a saída de erro na saída padrão
 >&2 Conecta a saída padrão na saída de erro
 >&- Fecha a saída padrão
 2>&- Fecha a saída de erro
 
Comandos BásicosComandos Básicos
Exercício de Fixação
1) Crie um diretório “shell”, dentro dele um novo arquivo “fle” e 
altere a sua data de criação/alteração para 01/01/2010 15:00.
2) Altere a data do sistema para 22/09/1978 ás 10 horas. 
3) Crie um alias chamado “kernel” que mostre a versão do Kernel.
4) Informe quantos usuários e grupos estão cadastrados, inclusive 
usuários e grupos de sistema.
5) Liste todos os usuários do sistema, e suas propriedades, por ordem 
alfabética de login.
6) Ordene a saída do comando abaixo: 
 $ echo -e "10 \n 4 \n 8 \n 6 \n 0 \n 2" 
 
Comandos BásicosComandos Básicos
Exercício de Fixação
7) Mostre o status de uso das partições dos arquivos 
/etc/debian_version e /proc/meninfo, explique porque são diferentes se 
os dois arquivos pertencem a mesma árvore de diretórios?
8) Atualize a base de dados do comando locate em background, 
depois localize o arquivo “70-persistent-net.rules”.
9) Liste todos os sub-diretórios do diretório /home dentro do arquivo 
/tmp/HomeDirs.txt 
10) Com um único comando liste todos os arquivos do sistema, não 
listar diretórios, que iniciem com a letra a (A ou a), tenham a extensão 
.txt, e mostre também o tamanho de cada um deles. Não mostre 
saídas de erro.
 
Comandos BásicosComandos Básicos
Exercício de Fixação
11) Execute um único comando que crie cópias backup de todos os 
arquivos de extensão ".txt" do sistema em um arquivo 
/tmp/backuptxt.tar;
12) Crie os alias de comando conforme exemplo abaixo:
 $ data
 Data do sistema (dd/mm/yyyy): 19/07/2010
 $ hora
 Hora do sistema: 22:15
13) Altere a data de modifcação do arquivo /etc/passwd para:
 Sex Jul 9 10:26:16 BRT 2010 
 
Atribuição-Compartilhamento pela mesma licença 2.5
(http://creativecommons.org/licenses/by-sa/2.5/deed.pt)
 Você pode:
● copiar, distribuir, exibir e executar a obra
● criar obras derivadas
● fazer uso comercial da obra
 Sob as seguintes condições:
Atribuição. Você deve dar crédito ao autor original, da forma especificada pelo autor 
ou licenciante.
Compartilhamento pela mesma Licença. Se você alterar, transformar, ou criar outra 
obra com base nesta, você somente poderá distribuir a obra resultante sob uma licença 
idêntica a esta.
● Para cada novo uso ou distribuição, você deve deixar claro para outros os termos da licença 
desta obra.
● Qualquer uma destas condições podem ser renunciadas, desde que Você obtenha permissão do 
autor.
Qualquer direito de uso legítimo (ou "fair use") concedido por lei, ou qualquer outro direito protegido 
pela legislação local, não são em hipótese alguma afetados pelo disposto acima.
Este é um sumário para leigos da Licença Jurídica
(na íntegra: http://creativecommons.org/licenses/by-sa/2.5/br/legalcode).
Termo de exoneração de responsabilidade: 
http://creativecommons.org/licenses/disclaimer-popup?lang=pt
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32

Continue navegando