Anda di halaman 1dari 15

Curso Linux LPILPI-101

Captulo 03
03
Comandos GNU e UNIX
Mdulo I

Objetivos do Captulo

Aprender a trabalhar com a linha de comandos.


Aprender a processar fluxos de textos com o uso de
filtros.

Trabalhando com a Linha de


Comandos
Interagir com o shell e comandos via linha de
comandos. Esse objetivo assume o uso do shell bash.
Utilizar comandos simples e sequncia de comandos em uma linha para
realizar tarefas bsicas.
Utilizar e modificar o ambiente do shell, incluindo definio, referncia e
exportao de variveis de ambiente.
Utilizar e editar o histrico de comandos.
Invocar comandos dentro e fora do caminho definido.

Shell BASH

Interpretador de Comandos

usuario@localhost:~/ $

formato do prompt definido atravs de


uma varivel chamada PS1

Variveis

Varivel local
disponvel somente pelo shell
Varivel de ambiente
acessvel tanto pelo shell corrente quanto
pelos subprocessos originados a partir desse
shell.
dltec ~ $cursolinux=1000
dltec ~ $export cursolinux

Os Comandos set e env

comando set
mostrar as variveis locais
comando env
mostrar as variveis de ambiente que esto
definidas durante a sesso
comanado unset
apagar a varivel

Varivel PS1

Define o formato do prompt


Debian:
root@debian:~# echo $PS1
${debian_chroot:+($debian_chroot)}\u@\h:\w\$
CentOS:
[root@localhost ~]# echo $PS1
[\u@\h \W]\$c
PS1='\[\033[0;31m\][\u\[\033[0;30m\]@\[\033[0;34m\]\w] \[\033[0;30m\]$ '

Varivel PS1
PS1='\[\033[0;31m\][\u\[\033[0;30m\]@\[\033[0;34m\]\w] \[\033[0;30m\]$ '
\[\033 - chama as cores
\[\033[00m\] - fecha a definio das cores

Peso
00=nenhum
01=negrito
04=sublinhado
05=piscando
07=invertido
08=oculto

Cores
30=Preto
31=Vermelho
32=Verde
33=Amarelo
34=Azul
35=Magenta
36=Ciano
37=Branco

Fundo
40=preto
41=vermelho
42=verde
43=amarelo
44=azul
45=magenta
46=cinza
47=branco

Varivel PATH

Contm os caminhos para os diretrios onde


existem binrios no sistema.
root@debian:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

root@debian:~# PATH=$PATH:/home/aluno/bin
Redefinindo a varivel PATH com o valor de $PATH e
acrescentando /home/aluno/bin.

Criando Apelidos para Comandos Alias

Criar um alias
dltec ~ $ alias ll='ls alF
Remover um alias
dltec ~ $ unalias ll
Verificar os aliases
dltec ~ $ alias

Arquivos de Login

login shell: entra com os dados de login


conexo SSH
arquivo /etc/profile (se esse existir)
arquivos ~/.bash_profile, ~/.bash_login e ~/.profile

no-login shell: no aparece pedido de login


abrir um terminal em um ambiente grfico
arquivos /etc/bash.bashrc e ~/.bashrc

Caminho Relativo x Absoluto

Caminho relativo: como chegar a um


determinado diretrios sem especificar o
caminho completo a partir do / (raiz).
cd ../local/share

Caminho absoluto: como chegar a diretrio


especificando o caminho completo a partir da
raiz.
cd /usr/local/share

Usando e Editando o Histrico de


Comandos

Arquivo .bash_history
contm os ltimos comandos da sesso
anterior
Comando history
visualizar o histrico de comandos da seo
atual

Obtendo Ajuda no Sistema

man tar
info tar
apropos tar
localiza em que manual contm a informao

Comando whatis
traz a informao do manual referente a string
que voc buscou

Processando Fluxos de Texto


Utilizando Filtros
Aplicar filtros em um fluxo de texto.
Enviar arquivos de texto e fluxos de sada atravs dos utilitrios de filtragem
para modificar a sada utilizando comandos padres do UNIX.

cat

Concatenar arquivos, exibir arquivos ou


redirecionar arquivos.
Exibindo o contedo do arquivo /etc/passwd
$ cat /etc/passwd
Exibindo o contedo de dois arquivos
$ cat /etc/passwd /etc/group

cut

Cortar, remover sees de cada linha de um


arquivo.
Exibindo os caracteres de 1 at 10 do arquivo /etc/passwd
$ cut -c1-10 /etc/passwd
Exibindo a coluna 1 e 3 do arquivo /etc/passwd
$ cut d ":" -f1,3 /etc/passwd

expand

Converter tabs em um arquivo para espaos.


Listar o arquivo /etc/services alterando o TAB por um espao.
$ expand t 1 /etc/services

head

Exibe o inicio de um arquivo


Exibindo as 5 primeiras linhas do arquivo /etc/services
$ head -n 5 /etc/services
Exibindo os 50 primeiros bytes do arquivos /etc/services
$ head -c 50 /etc/services

join

Exibe uma linha para cada par de linhas, uma


do primeiro arquivo e outra do segundo.
necessrio que tenham um campo que
identifique as linhas em cada arquivo.
$ join j1 nomes.txt grupo.txt

Nomes.txt

1 Mike grupo1
2 Alexei grupo2
3 Marcelo grupo1

1 Mike
2 Alexei
3 Marcelo

Grupo.txt
1 grupo1
2 grupo2
3 grupo1

10

nl

Listar o contedo de um arquivo exibindo a


contagem das linhas
$ nl arquivo.txt
1 Isso uma linha
2 Isso outra linha
3
4 Essa outra linha

pr

Converter arquivos de texto para impresso

11

sed

Editor de fluxo de texto


Substituir essentials por lpi101 no arquivo.txt
$ sed 's/essentials/lpi101/' arquivo.txt
Substituio mltipla - essentials por lpi101 no arquivo.txt
$ sed 's/essentials/lpi101/g' arquivo.txt
Restringindo linhas alterar somente linhas 5 e 6
$ sed '5,6 s/1/2/' arquivo.txt
Deletando linhas que contenham a string dois
$ sed /dois/ d' arquivo.txt
Alterando todas as linhas que contenham a string dois
$ sed /dois/ c Nova linha' arquivo.txt

sort

Ordenar o contedo de um arquivo


Opo unique
exibir apenas os valores nicos

Parmetro t
Separador utilizado

Parmetro n
Comparao numrica

$sort -k 3 -n -t : /etc/passwd
Referncia na 3a coluna,
Comparao nmrica
Separador de coluna :

Parmetro k
Referncia da coluna

12

split

Transformar um arquivo em arquivos menores


split [opes] [arquivo|fluxo] [prefixo]
Parmetros mais comuns:
-b = valor em bytes para cada arquivo a ser gerado
-d = sufixo numrico ao invs de alfabtico (padro)
-l = nmero mximo de linhas por resultado (utilizado no
caso de arquivos de texto)

tail

Mostrar as ltimas linhas de um arquivo.


Listar a ltima linha do arquivo /etc/services
$ tail -n 1 /etc/services
Listar os ltimos 512 bytes do arquivo /etc/passwd
$ tail -c 512 /etc/passwd

13

tr

Substituio de um valor por outro.


Alterar o texto de um arquivo de caixa baixa para caixa alta
$ cat arquivo.txt | tr a-z A-Z
Remover o M de arquivos com encoding do dos utilizando tr
$ tr d '\r < arquivo.txt > arquivo_novo.txt

uniq

Exibir ou ocultar linhas duplicadas.


Exibir apenas os resultados duplicados de um arquivo.
root-debian:/tmp# cat arquivo.txt | uniq -d
Jorge de Matos

14

wc

Exibir a contagem de linhas, palavras ou bytes


de um arquivo ou fluxo.
Contar quantas entradas temos no arquivo /etc/passwd
$ wc -l /etc/passwd
Contar quantas palavras tem em um fluxo
$ cat /tmp/arquivo.txt | wc -w
Verificar a quantidade de bytes de um arquivo
$ wc -c /tmp/arquivo.txt

Finalizao

Matria Online Estude!!!


Atividade Prtica No deixe de fazer!!!
Simulado Online Pratique bastante!!!
Fruns Participe!!!
Tutores Tire suas dvidas!!!

15

Anda mungkin juga menyukai