Вы находитесь на странице: 1из 41

Curso Linux Essentials

Curso Linux Essentials


Capítulo 02 – Encontrando seu Caminho em Sistemas Linux

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 1
Curso Linux Essentials

Objetivos do Capítulo
Ao longo desse capítulo você deverá:

•Aprender a utilização básica da linha de comandos no Linux.


•Aprender como utilizar os comandos de ajuda e navegação nos vários sistemas
de ajuda do Linux.
•Saber como navegar por entre os diretórios home e system e listar arquivos em
várias localizações.
•Dominar as formas de criar, mover e apagar arquivos e diretórios.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 2
Curso Linux Essentials

Introdução a Linha de Comandos


Nesse tópico iremos iniciar nossos estudos com a linha de comandos do Linux.

Ao longo desse tópico abordaremos temas como shell básico, comandos de formatação,
trabalhando com opções, variáveis, globbing e quoting. Aqui nesse tópico faremos uma
abordagem superficial a medida que progredirmos no curso entraremos em mais detalhes.

Tenha em mente que o programa Linux Essentials da LPI funciona como um pré-requisito
recomendado para o curso Linux LPIC-1 (LPI 101-102). O objetivo aqui é introduzir os
alunos que possuam pouca ou nenhuma experiência no mundo Linux e na forma de se
trabalhar com esse sistema operacional, para que quando forem realizar o curso LPIC-1 não
enfrentem dificuldades associadas aos conceitos básicos do Linux.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 3
Curso Linux Essentials

Shell Básico
O Shell é o interpretador de comandos no Linux. Ou seja, quando o usuário
digita um comando qualquer no Linux é o shell que interpreta esse comando e
envia a instrução para o Kernel.

Por exemplo, quando digitamos o comando ls –la para listar o conteúdo de um


diretório qualquer é o shell que interpreta esse comando.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 4
Curso Linux Essentials

Shell Básico
A forma que nós, usuários, temos para interagir com o shell é através de um
programa chamado emulador de terminal. Existem várias opções de emuladores
de terminal, mas como exemplo podemos citar o gnome-terminal para o GNOME
e o Konsole para o KDE.

Nos ambientes gráficos do Linux iniciar o terminal é bem simples, provavelmente


seu gerenciador de desktop terá uma opção de iniciar o terminal a partir do menu.
Basta procurarmos na lista de programas pelo terminal e com certeza será
mostrada a opção instalada. Aqui mostramos um ambiente gráfico do KDE que
mostra o Konsole como opção para emulador de terminal.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 5
Curso Linux Essentials

O History do bash
Uma facilidade bem legal que temos ao utilizar o bash é o history (histórico de
comandos). Por padrão o bash utiliza um arquivo chamado .bash_history que fica
armazenado no diretório home de cada usuário. Esse arquivo é alimentado com
os últimos comandos digitados pelo usuário. Para visualizar o histórico de
comandos basta entrar com o comando history.

Aqui uma curiosidade é que você pode utilizar alguns atalhos para interagir com
o history, por exemplo:

! -> executa o último comando. Em nosso caso executaria o ping da linha 23.
!2 -> executa o comando da linha 2
!-6 -> executa o comando referente a linha atual menos 6 posições. Em nosso
exemplo iria executar o comando da linha 18.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 6
Curso Linux Essentials

Movendo-se entre os Diretórios


Nesse tópico iremos introduzir de forma bem básica nossos três primeiros
comandos no Linux.

pwd (print working directory) que é o comando utilizado para exibir em que
diretório você se encontra.
cd (change directory) utilizado para mudarmos de diretório.
ls (list files and directories) utilizado para listar arquivos e diretórios.

Mas antes de vermos a utilização desses comandos vamos falar um pouco sobre a
estrutura de diretórios no Linux. Assim como em outros sistemas operacionais o
Linux utiliza uma estrutura hierárquica de diretórios, organizada em um
padrão conhecido como árvore de diretórios, onde cada diretório pode conter
arquivos ou outros diretórios.

Nessa árvore o primeiro diretório é chamado de root. O root é a raiz do sistema,


representado pelo caractere “/” (barra para direita), tudo está abaixo da raiz, ela é
nosso top-level, nossa ponta da pirâmide.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 7
Curso Linux Essentials

O Comando pwd
Visualizar a estrutura de diretórios em um formato gráfico é relativamente fácil.
Observando a figura fica fácil de vermos que o root (/) é o nosso top-level e que
todos os outros arquivos e diretórios se encontram abaixo do root.

Mas quando estamos em um ambiente de linha de comandos essa visualização


nem sempre é fácil. Por isso existe o comando pwd que nos mostra em que
diretório nos encontramos.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 8
Curso Linux Essentials

O Comando ls
O comando ls é utilizado para listar os arquivos e diretórios de algum diretório.
Se você simplesmente entrar com o comando ls simples ele irá listar o conteúdo
do seu diretório atual. Por exemplo, ao digitarmos o comando ls simples, sem
nenhuma opção, ele nos mostra que temos em nosso diretório atual alguns
arquivos e diretórios (Área de Trabalho, lista.txt, scripts e etc...).

Mais para frente nesse curso veremos como utilizar algumas opções e como
entender melhor a saída desse comando.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 9
Curso Linux Essentials

O Comando cd
Já o comando cd é utilizado quando desejamos trocar de diretório, ou seja, ir de
um diretório para outro. Seu uso é bem simples, basta entrar com o comando cd
NOME/DO/DIRETORIO/DESEJADO.

Por exemplo, se queremos ir até o diretório /user/bin basta digitar o comando cd


/usr/bin que prontamente mudamos de diretório. Perceba que ao mudarmos de
diretório nosso prompt também muda. Atente para a parte grifada em vermelho,
ao mudarmos para o diretório /usr/bin nosso prompt também foi alterado.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 10
Curso Linux Essentials

Trabalhando com opções de comandos (parâmetros)


A maior parte dos comandos aceitam que você informe algum parâmetro para
esse comando. Por exemplo, ao digitarmos o comando ls –help ele exibe uma
página de ajuda sobre o comando o comando ls.

Já se digitarmos o ls –al, o comando ls irá exibir também os arquivos/diretórios


ocultos (opção –a) e no formato lista longa (opção –l).

Não se preocupe nesse momento com quais opções utilizar. O importante aqui é
que você comece a se habituar com a forma de se trabalhar com comandos e
opções e que você entenda que existem diversas opções (ou parâmetros) para um
mesmo comando. Pode parecer complicado, mas na verdade, o uso de opções nos
comandos é algo que facilita muito a vida dos administradores de sistemas Linux.
Com o tempo, de tanto utilizar essas opções, elas vão acabar se tornando
corriqueiras e usuais para você também.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 11
Curso Linux Essentials

O Path
Vamos agora falar sobre um importante conceito no Linux, o path. Vamos ilustrar
com um exemplo bem simples.

Quando queremos listar o conteúdo do diretório em que estamos simplesmente


digitamos o comando ls. No entanto, o comando ls está localizado em uma pasta
/bin. É nessa pasta /bin que está o arquivo que contém as instruções desse
comando. Mas então, por que não precisamos informar o caminho completo do
comando (/bin/ls) para utilizarmos esse comando? Por que simplesmente
digitando o comando ls o sistema entende que queremos utilizar exatamente o
comando ls que está lá pasta /bin?

A resposta para essa questão é por causa da variável PATH. Essa variável define
os diretórios do sistema onde os arquivos executáveis podem ser encontrados.
Em nosso exemplo a variável está listando os diretórios mostrados em vermelho.
Ou seja, quando digitamos ls o sistema irá buscar por uma correspondência nos
diretórios listados na variável PATH e tão logo a correspondência seja encontrado
(no caso, no diretório /bin) a busca é interrompida e o comando é executado.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 12
Curso Linux Essentials

Globbing (Caracteres Curinga)


O Glob foi um programa que existiu no unix para expandir a capacidade de
utilização de caracteres curingas de forma estendida. Hoje em dia essa
facilidade está incorporada no shell e graça a esta ferramenta podemos utilizar
uma série de parâmetros para fazer varredura, leitura, alteração em diretórios e
assim por diante.

Nesse momento vamos citar dois caracteres curinga que são muito utilizados, o ?
(interrogação) e o * (asterisco). Muitos já devem estar acostumados com a sua
utilização, sendo que:

? = Faz match em um único caractere


* = Faz match em qualquer caractere (inclusive vazios)

Por exemplo, se quisermos listar todos os arquivos que possuam a extensão .jpg
de um diretório podemos utilizar o caractere * para facilitar nossa vida.

Basta entrarmos com o comando ls *.txt.

Ainda nesse capítulo veremos com mais detalhes alguns exemplos de utilização
dos caracteres curinga e no decorrer desse curso você verá várias formas de sua
utilização.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 13
Curso Linux Essentials

Quotting (Escape de Caracteres)


Mais uma vez vamos utilizar um exemplo bem simples para ilustrar o conceito de
escape de caractere. Vamos supor que a gente queira manipular um arquivo ou
diretório que contenha o caractere / em seu nome ou $, por exemplo. Nesses
casos teremos que fazer o escape do caractere desejado, caso contrário o sistema
não entenderá que a / ou o $ fazem do parte do nome do arquivo, uma vez que
esses caracteres são utilizados pelo sistema com outros significados.

Para fazer o escape de caractere utilizamos a barra invertida (\) ou também as


aspas simples ou duplas.
Uma barra invertida (\) cancela a funcionalidade do caractere que vem em
seguida. Ou seja, ao digitarmos cd /teste\\2, a primeira \ cancela a funcionalidade
da segunda \, dessa forma o sistema entende que o que realmente queremos é o
diretório teste\2.

Outra forma de utilização seria através do uso das aspas, simples ou duplas.
Basta colocar o nome entre as aspas que o sistema não irá considerar os
caracteres especiais.

Um detalhe importante é que as aspas duplas não funcionam com o $, a menos


que faça o escape do $ com a \. Por exemplo, para criar um arquivo chamado
teste$2, você deveria utilizar aspas simples. Com as aspas duplas seria necessário
fazer o escape do $ com a \.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 14
Curso Linux Essentials

Usando a Linha de Comando para Obter Ajuda


O objetivo desse tópico do capítulo é que você se familiarize com as várias formas de se
conseguir ajuda em sistemas Linux. Ao final desse tópico você deverá conhecer as várias
formas de se obter ajudar, como por exemplo o comando man, info e outros mais.

Esses dois comandos (man e info) provavelmente lhe acompanharão pelo resto da sua vida
quando trabalhando com o Linux. É muito importante que se habitue com sua utilização,
uma vez que é quase impossível de se decorar todos os comandos e todas as opções de cada
comando. Por isso, sempre que tiver uma dúvida sobre como utilizar um determinado
comando ou que opções estão disponíveis e o que cada uma delas faz você deverá pesquisar
sobre o comando em questão com o man e/ou info.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 15
Curso Linux Essentials

Manuais (comando man)


O Linux traz em sua instalação e em seus programas muitos pacotes de
documentação , normalmente estes estão em inglês mas possuem toda a
documentação referente ao comando em si.

O comando man é um dos recursos mais úteis do Linux e de outros sistemas


unix, através dele você obtém toda a documentação de um comando, com
explicações detalhadas e muitas vezes alguns exemplos.

Vamos pegar por exemplo um pedaço do comando “man tar”. Veja que ele traz o
inicio uma sinopse, em seguida uma descrição e exemplos. Na sequência a saída
do comando lhe fornece explicações a respeito de cada um dos parâmetros que o
comando aceita. Aqui vale ressaltar um detalhe, quando estiver lendo uma página
de manual, para voltar à linha de comandos, ou seja, para sair do manual, basta
pressionar a tecla q.

Atente que a maioria dos manuais estão no idioma inglês, então é muito
importante que você dê uma boa treinada no inglês para conseguir ter mais
domínio, mas com certeza isso fará toda a diferença para você. Em último caso,
se você enfrentar alguma dúvida ou dificuldade em entender algum termo em
inglês explicativo do comando, não se esqueça do Google Translator.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 16
Curso Linux Essentials

Comando info
O comando info acessa as mesmas documentações que o man. Na verdade ele é
um leitor para estas documentações, basicamente o comando info permite uma
navegação mais fácil pelas páginas por ter mais recursos como procura,
navegação por links e etc.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 17
Curso Linux Essentials

Arquivos de Documentação
Além dos manuais em alguns casos temos arquivos de exemplos e outros no
diretório /usr/share/doc seguido do nome do comando ou programa que você
está buscando, por exemplo veja a listagem dos arquivos do diretório
/usr/share/doc/rsync

Perceba que dentro do diretório além dos arquivos de licença (copyright), temos
o README, changelog e alguns outros dependendo de que diretório estamos
listando. No caso do rsync temos um diretório examples e outro scripts, no
diretório examples são alguns exemplos de configuração para o rsync e no
diretório scripts alguns scripts que podem ser utilizados para algumas operações
como log, verificação de status e outros.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 18
Curso Linux Essentials

Encontrando um Manual a Partir de uma Referência


Algumas vezes nós sabemos o nome de um arquivo ou comando e queremos
saber onde tem informações sobre ele, para este caso nós utilizamos o comando
apropos. A ideia deste comando é simplesmente localizar em que manual contém
a informação que você solicitou, veja o exemplo ao lado.

Por exemplo, ao questionarmos o apropos sobre “passwd”, o sistema trouxe


vários manuais com referências ao termo, ou seja, se você quer procurar algo,
mas não sabe de qual manual é, utilize o apropos para esta função.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 19
Curso Linux Essentials

Localizando Arquivos
Como no Linux utilizamos muito a linha de comando é importante que saibamos
através do modo console procurar por um arquivo. Tenha em mente que nem
sempre você saberá onde um determinado arquivo se encontra, ele pode estar fora
de padrão ou com uma instalação especifica e nestes casos você precisará
localizar esse arquivo.

Para tal podemos utilizar os comandos locate e whereis.

O comando locate é utilizado para exibir a localização de arquivos. Um ponto


importante é que ele não irá procurar o arquivo no momento em que você o
acionou, pois ele possui um banco de dados que roda uma ou mais vezes por dia e
atualiza as informações. Então, se você quer uma informação mais precisa é
interessante executar o update desse banco de dados com o comando updatedb,
dessa forma a tabela será devidamente atualizada e você conseguirá encontrar
qualquer arquivo no sistema.

Já o comando whereis é utilizado para procurar arquivos binários, códigos fontes


e/ou páginas de manuais. Se digitarmos o comando whereis passwd, por
exemplo, o retorno será a linha mostrada ao lado. Veja que ele trouxe a string
passwd: seguida de tudo que ele achou, o primeiro passwd trata-se de um fonte, o
segundo é o binário de troca de senhas, o terceiro é o arquivo de senhas do Linux,
depois os manuais.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 20
Curso Linux Essentials

Usando Diretórios e Listando Arquivos


Nesse tópico iremos começar a aprofundar nosso conhecimento sobre o sistema de
navegação do Linux. Até o final desse tópico iremos aprender mais sobre arquivos e
diretórios, algumas opções úteis do comando ls e entender o conceito de caminho absoluto e
caminho relativo na estrutura de diretórios do Linux.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 21
Curso Linux Essentials

Arquivos e Diretórios
Vamos começar frisando dois pontos importantes:

• No Linux a extensão de um arquivo, por exemplo, .txt, não faz muita


diferença para o sistema. A extensão tem o intuito apenas de facilitar para
quem está vendo o arquivo sobre o que se trata, mas não é primordial sua
utilização. Por exemplo, um arquivo de texto qualquer pode ser nomeado com
o nome teste.jpg que irá continuar sendo um arquivo de texto e sendo aberto
por um aplicativo de texto.

Obs: para descobrirmos o tipo de um arquivo podemos utilizar o comando


file nomedoarquivo. Veja um exemplo da saída desse comando, onde temos
a informação de que o arquivo2.txt é do tipo texto.

• O Linux diferencia letras maiúsculas e minúsculas no nomes dos arquivos e


diretórios. Ou seja, o arquivo teste.txt é diferente do arquivo Teste.txt. Fique
atento a esse detalhe sempre.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 22
Curso Linux Essentials

Arquivos e Diretórios – comando ls


Vamos agora ver um pouco mais a fundo algumas opções de uso do comando ls.
Conforme já vimos o comando ls é utilizado para listar arquivos e diretórios no
Linux. Também já comentamos sobre o uso de opções nos comandos, que são
parâmetros que adicionamos ao comando com o intuito de estender sua utilização
para além da sua forma básica.

Se você verificar o manual do comando ls (man ls) verá que existem diversas
opções de uso, mas algumas acabam sendo mais utilizadas do que as outras.
Vamos agora exemplificar o uso de algumas das principais opções do comando ls.

Pois bem, a forma simples de utilizarmos o comando ls é simplesmente digitando


ls sem nenhuma opção. Isso trará na tela do terminal uma saída como a mostrada,
onde temos a listagem básica de arquivos e diretórios dentro do diretório em
questão.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 23
Curso Linux Essentials

Comando ls –p
Apenas observando a saída do comando ls simples não conseguimos identificar
quem é arquivo e quem é diretório. Para isso temos a opção –p que acrescenta
uma / no final de cada diretório.

Veja a saída do comando ls simples, sem nenhuma opção. Perceba que foi exibida
a listagem dos arquivos/diretórios mas ainda não conseguimos saber quem é
quem, por exemplo, scripts trata-se de um arquivo ou diretório???

Agora se acrescentarmos a opção –p ao comando ls podemos perceber que em


alguns casos temos uma / no final do nome. Esses são justamente os diretórios.
Todos que estão com a / no final são diretórios e todos os que não possuem a / no
final são arquivos. Assim mais fácil de percebemos que scripts/ trata-se de um
diretório e não de um arquivo.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 24
Curso Linux Essentials

Comando ls -l
Outra opção muito útil é a –l que exibe em formato de lista longa, trazendo
informações mais completas sobre cada arquivo.

O primeiro bloco do comando traz as permissões aplicadas no diretório. Detalhe,


quando no início temos um d é porque trata-se de um diretório.
O segundo campo é a quantidade de diretórios existentes dentro desse diretório.
O terceiro campo representa o proprietário do diretório.
O quarto campo representa o grupo ao qual o diretório faz parte.
O quinto campo traz o tamanho do diretório em bytes .
O sexto campo traz a data da última modificação.
O sétimo campo traz o diretório/arquivo em questão.

Com estas informações você já pode identificar arquivos e diretórios sem maiores
dificuldades. Mais para frente nesse curso entraremos em mais detalhes sobre
como interpretar o campo de permissões do arquivo. Não se preocupe com isso
nesse momento, tudo ficará mais claro mais para frente.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 25
Curso Linux Essentials

Comando ls -a
Outra opção que não podemos deixar de citar é a opção –a que exibe os
arquivos/diretórios ocultos. Vamos exemplificar com um caso simples, primeiro
entrando com o comando ls simples no diretório home do usuário aluno. Perceba
os arquivos informados.

Agora vamos entrar com o comando ls –a. Perceba a diferença, existem alguns
arquivos/diretórios que não estavam lá quando entramos somente com o comando
ls (sem a opção –a). Grifamos em vermelho na saída para melhor ilustrar. Perceba
também que todos eles possuem um . (ponto) no início. Esse ponto é o indicativo
de que se trata de um arquivo ou diretório oculto e que só será exibido com a
opção -a habilitada.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 26
Curso Linux Essentials

Comando ls
Citamos apenas algumas opções do comando ls, mas se você verificar o manual
desse comando (man ls) você verá que existem muitas outras. Aqui vimos
apenas as opções –p, -l e –a.

Uma dica importante: você pode combinar as opções, por exemplo, o comando ls
–pla irá combinar todas as opções informadas. É o mesmo que utilizar ls –p –l –
a.

Mais uma vez vale lembrar que você deve se habituar a ler os manuais de
comandos. Essa é uma prática muito importante no dia a dia de um profissional
que trabalha com Linux, pois na maioria das vezes você conseguirá resolver um
problema de uma forma muito mais fácil com o uso de alguma opção do
comando. E é quase impossível que você guarde todas as opções de todos os
comandos, por isso, construa o hábito de ler os manuais sempre que preciso.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 27
Curso Linux Essentials

Diretório home
Desde o início do curso até agora você já deve ter reparado que várias vezes
falamos do diretório home. Esse é o diretório especifico para armazenamento
dos dados dos usuários, por exemplo, o usuário mike possui por padrão seu
home (sua casa) no diretório /home/mike.

É importante ressaltar que nada impede que você utilize outro local para isso,
porém você estaria fugindo do padrão e os padrões foram criados para que o
conhecimento pudesse ser compartilhado por todos. Assim qualquer
administrador que precise sabe onde ficam as coisas desde que elas estejam
utilizando os devidos padrões.

O diretório home é muitas vezes referenciado pelo caractere “~” , por exemplo,
de qualquer lugar do sistema se você digitar cd ~ você será direcionado para o
diretório home de seu usuário.

Dica:
Um uso comum que fazemos é criar o diretório /home em uma partição
separada do HD, desta forma podemos atualizar ou reinstalar o sistema
operacional sem nos preocupar com estes dados.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 28
Curso Linux Essentials

Caminho Absoluto e Caminho Relativo


O caminho nada mais é do que a direção que você deve seguir, dentro da
estrutura de diretórios, para chegar a um determinado arquivo ou diretório.

O caminho absoluto inicia a partir do diretório raiz (o root) e guia você por entre
a estrutura de diretórios, desde da raiz até o destino final. Por exemplo, se
quisermos chegar até o diretório bin, que está dentro de usr, que está dentro do
root, podemos utilizar o caminho absoluto /usr/bin. Sendo que a primeira / é o
root, depois informamos que o próximo salto é o diretório usr e por último o
diretório bin.

Já o caminho relativo inicia a partir do seu diretório atual. Para indicar um


caminho relativo utilizamos o "." (ponto) e o ".." (ponto ponto).
O "." faz referência ao seu diretório atual e o ".." faz referência ao diretório pai
do seu diretório atual.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 29
Curso Linux Essentials

Caminho Absoluto e Caminho Relativo


Vamos ilustrar através de um exemplo para clarear as coisas. Estamos no
diretório /usr/bin e desejamos mudar para o diretório pai do /usr/bin. O
diretório pai do /usr/bin é o diretório /usr. Ou seja, o pai é o diretório anterior.
Dentro do diretório pai encontram-se os diretórios filhos.

Uma das maneiras é digitarmos o caminho absoluto do diretório para onde


queremos ir, em nosso caso, cd /usr.

Outra forma seria utilizando o caminho relativo, já que estamos no diretório


/usr/bin e queremos ir para o diretório pai (/usr) poderíamos digitar somente cd ..
(cd ponto ponto) que daria o mesmo resultado.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 30
Curso Linux Essentials

Criando, Movendo e Removendo Arquivos ou Diretórios


No último tópico desse capítulo iremos aprender como criar, mover e apagar arquivos e
diretórios no Linux. Relembraremos alguns pontos importantes que já comentamos ao longo
do curso e entraremos em mais detalhes sobre o uso dos caracteres curinga.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 31
Curso Linux Essentials

Movendo Arquivos e Diretórios


Agora vamos entrar na manipulação de arquivos e diretórios via linha de
comandos no Linux. Nos próximos slides vamos aprender a criar, mover, copiar e
deletar arquivos e diretórios via linha de comando. A manipulação de arquivos
via linha de comando é feita basicamente através da utilização dos seguintes
comandos:

touch (para criar arquivos)


mkdir (para criar diretórios - make directory)
cp (de copy - para copiar arquivos e diretórios)
mv (de move – para mover arquivos e diretórios)
rm (de remove – para deletar)
rmdir (de remove directory – também para deletar diretórios)

É claro que existem maneiras mais simples de se fazer essas coisas através das
interfaces gráficas, no entanto, a utilização da linha de comando nos dá uma
flexibilidade que não é encontrada nas interfaces gráficas.

Antes de prosseguirmos com os comandos em si, vamos relembrar alguns pontos


importantes e também aprofundar nossos conhecimentos sobre caracteres
curingas no Linux.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 32
Curso Linux Essentials

Um pouco mais sobre Caracteres Curinga


Conforme já vimos anteriormente os caracteres curinga nos permitem fazer a
seleção de nomes de arquivos baseada em padrões de caracteres. Já aprendemos
no tópico sobre "Globbing" a utilização do * e ?. Vamos agora ver com mais
detalhes o uso dos caracteres curinga.

Conforme vocês podem observar na tabela podemos utilizar os seguintes


caracteres curinga:

* - Corresponde qualquer caractere


? - Corresponde a um caractere único
[caracteres] - Corresponde qualquer caractere que seja membro do grupo
especificado. A especificação do grupo pode ser feita através de:

[:alnum:] Caracteres alfanuméricos


[:alpha:] Caracteres alfabéticos
[:digit:] Numerais
[:upper:] Caracteres alfabéticos maiúsculos
[:lower:] Caracteres alfabéticos minúsculos

[!characters] - Corresponde qualquer caractere que não faça parte do grupo


especificado.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 33
Curso Linux Essentials

Um pouco mais sobre Caracteres Curinga


Para exemplificar vamos ver alguns exemplos de uso dos caracteres curinga...Invista um
tempo para entender e praticar sua utilização, lá para frente você verá que esse tempo terá
sido um bom investimento!!! Em uma das atividades práticas do capítulo 02 propomos
uma série de exercícios para você praticar, por isso, quando chegar a hora não deixe de
fazer essa e todas as atividades práticas propostas.

É importante ressaltar que você pode utilizar os caracteres curinga (também chamados de
wildcard) com qualquer comando que aceite nome de arquivos como argumento.

Então vamos lá...como vocês podem ver na tabela temos vários exemplos de uso.

Pode até parecer complicado, mas no dia a dia esse tipo de recurso se mostra uma
verdadeira “mão na roda” nos dando muito mais flexibilidade se comparada ao modo
gráfico (em um gerenciador gráfico de desktop).

Imagine que você tenha um diretório com centenas de arquivos de fotografias, alguns
onde o nome começa com letra minúscula e outros que comecem com maiúscula!!!
Agora imagine que você queira listar somente os que iniciam com letra maiúscula!!!

No modo gráfico provavelmente não traria essa opção para você. Mas na linha de
comandos essa tarefa seria reduzida a um simples comando:

ls [[:upper:]]*

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 34
Curso Linux Essentials

Movendo Arquivos e Diretórios


Para movermos arquivos ou diretórios de um lugar para outro utilizamos o comando mv.
Este comando é uma abreviação da palavra move (do inglês mover) e a sintaxe básica de
comando é mv [origem] [destino].

Dessa forma ao digitarmos o comando mv teste /home/aluno estaremos movendo o


diretório teste para o diretório /home/aluno. É importante ressaltar que estaremos
movendo e não copiando. Ou seja, o diretório teste irá sair de onde ele está e irá para
/home/aluno, ou seja, para dentro da pasta aluno, que está dentro da pasta home.

Você pode também mover e já ao mesmo tempo alterar o nome de destino. Por exemplo,
você quer mover o diretório teste para dentro de /home/aluno mas quer que lá ele se
chame novoteste. Para isso você entraria com o comando mv teste
/home/aluno/novoteste.

Aqui é importante lembrar que se, por acaso, já existir um diretório com o nome
novoteste dentro da pasta /home/aluno o seu diretório teste (que você está movendo) irá
para dentro dessa pasta novoteste. Ora, se ela já existia lá o sistema considera que você
está querendo mover o diretório teste para dentro desse novoteste. Se ela não existe, o
sistema considera que você está querendo mover e mudar o nome.

Ah, outra coisa...o comando mv funciona da mesma forma para arquivos e diretórios.
Aqui citamos um exemplo com diretórios, mas para mover arquivos o processo é
exatamente o mesmo.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 35
Curso Linux Essentials

Copiando Arquivos e Diretórios


No slide anterior vimos o comando mv que movia um arquivo/diretório. E para
criar uma cópia, que comando utilizamos?
A resposta é o comando cp, de copiar. A sintaxe básica do copy é similar a do
comando mv, ou seja, basta utilizar cp [origem] [destino].

No entanto, no comando copy temos uma diferença básica, ao copiar um diretório


inteiro é necessário acrescentar o parâmetro –r que significa recursivo. Essa
opção irá fazer com que ele pegue todo o diretório (o próprio diretório e todos os
que estão dentro dele) e acrescente a copia.

Ou seja, se dentro do diretório teste houver outros diretórios que você deseja
também copiar é necessário utilizar a opção –r.

Vale lembrar que existem outros parâmetros que podem ser utilizados. Verifique
depois o manual do comando cp (man cp) para ver a lista completa. Aqui vamos
citar mais três opções que podem ser úteis.

-v = verbose (exibe o que está copiando)


-i = interactive (solicita confirmação)
-p = mantém permissões

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 36
Curso Linux Essentials

Removendo Diretórios
Já vimos como mover e como copiar, agora vamos ver como apagar um
diretório/arquivo. Existem dois comandos que podem ser utilizados, o comando
rmdir e o comando rm.

O comando rmdir não é muito utilizado pois ele apenas remove diretórios que
estejam vazios.

Já o comando rm, assim como o cp, por padrão não remove o diretório e seus
arquivos recursivamente. Para isso temos que utilizar a opção –r. Ou seja, se
você deseja deletar um diretório que não esteja vazio você deve utilizar o
comando rm com a opção –r.

Vale lembrar que para arquivos o uso do comando rm é similar, basta utilizar rm
[opções] [nomedoarquivo].

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 37
Curso Linux Essentials

Criando Arquivos
Vimos até agora como copiar, mover e apagar...e para criar arquivos e diretórios?
É isso que veremos agora...primeiro vamos ver algumas formas de criarmos
arquivos.

Comando touch: esse comando cria um arquivo vazio com o nome que você
especificar. Na verdade esse comando é utilizado para modificarmos a hora de
um arquivo, mas se entrarmos com o comando com um nome de arquivo que não
existe, ele irá criar esse arquivo.

Por exemplo, $touch teste.txt cria um arquivo no seu diretório atual com o nome
teste.txt se esse arquivo não existir.

Ah, lembre-se que a extensão no nome do arquivo é apenas para facilitar a sua
compreensão. Não é porque demos o nome do arquivo como teste.txt que ele será
um arquivo de texto. Eu poderia entrar com o comando $touch teste.jpg ou
somente $touch teste. E para verificar qual o tipo do arquivo utilizamos o
comando file, $file teste.txt vai mostrar de que tipo é o arquivo teste.txt.

Claro que aqui também temos a forma mais comum de criarmos um arquivo que
é através de um editor de texto normal. No linux, via linha de comando, temos o
nano ou vi como exemplo de editores de texto. Não se preocupe que veremos
mais detalhes sobre esses editores nos próximos capítulo do curso. Mas
funcionaria da forma que a maioria de nós está acostumada. Basta abrir o editor,
colocar lá o conteúdo e depois salvar o documento.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 38
Curso Linux Essentials

Criando Diretórios
Vimos no slide anterior como criar arquivos e agora veremos como criar diretórios. E
para essa tarefa utilizamos o comando mkdir (de make directory, ou fazer diretório). A
sintaxe do comando é bem simples, mkdir [opcoes] [nomedodiretorio]. Por exemplo,
para criar o diretório teste basta entrar com o comando $mkdir teste.

Agora um detalhe, vamos supor que você queira criar um série de diretórios, um dentro
do outro. Por exemplo, teste/teste1/teste2/teste3, ou seja, um diretório teste, dentro desse
teste um outro teste1, dentro do teste1 um diretório teste2 e dentro do teste2 o teste3.

Em vez de ir criando um por um (cria o teste, entra dentro dele e cria o teste1, entra no
teste1 e cria o teste2 e etc) existe uma maneira bem mais fácil que é com o parâmetro –
p. Essa opção irá criar todos os diretórios “pais” que forem necessários de uma só vez. O
comando seria utilizado da seguinte forma:

$mkdir –p teste/teste1/teste2/teste3

O sistema interpreta da seguinte forma: preciso criar o diretório teste3 que tem como
“pai” o diretório teste2. Como esse diretório teste2 não existe eu vou criar ele também.
Mas o teste2 está dentro do teste1 (ou seja, teste1 é pai de teste2), como teste1 não existe
eu devo criar ele também...e assim sucessivamente.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 39
Curso Linux Essentials

Utilizando Caracteres Curinga


Agora para fechar o capítulo vamos voltar aos caracteres curinga e ver como eles
podem facilitar nossa vida na hora de manipular arquivos. Vamos utilizar um
exemplo para ilustrar a ideia.

Suponha que você tenha um diretório onde você salva vários arquivos de log e
que esses arquivos tenham um padrão no nome, sendo log_aaaa_mm_dd.log onde
aaaa é o ano, mm é o mês e dd é o dia. Por exemplo log_2012_03_11.log é o
arquivo de log do dia 11 de março de 2012 e assim por diante.

Agora vamos supor que você queira manipular, seja apagar ou mover ou copiar,
todos os arquivos de um determinado período. Os caracteres curinga entram
justamente aí. Por exemplo, para copiarmos os logs de todos os dias 11,12,13 de
todos os meses para uma pasta podemos utilizar o seguinte comando:

$cp log_2012_??_[11-13].log /home/meuslogs

Isso faria com todos os arquivos dos dias 11,12,13 de todos os meses de 2012
fossem copiados para a pasta home/meuslogs. Perceba que utilizamos vários
caracteres curinga de uma só vez. Você conseguiu entender a utilização? Vamos
lá...estamos dizendo que os nomes dos arquivos que devem ser copiados possuem
um formato onde começa com log_2012_ seguido de 2 caracteres quaisquer,
seguido de 11 ou 12 ou 14, seguido de .log. Todas as correspondências a esse
padrão serão copiadas para a pasta /home/meuslogs.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 40
Curso Linux Essentials

Finalização do Capítulo
Bem pessoal, chegamos ao fim desse capítulo. Não se esqueça de que ainda não é hora de passar
para o próximo capítulo do curso. Você já estudou tudo que está lá na área do aluno?

Então, se você ainda não leu a matéria online vai lá na área do aluno e leia, estude a matéria
online. Aqui fizemos apenas uma explicação dos pontos mais importantes, mas lá na matéria
online tem alguns outros detalhes que não comentamos aqui. Lá na matéria online tem o tudo o
que falamos aqui e mais um pouco, então volte lá e estude a matéria online.

E as atividades práticas, já fez todas elas. Aqui no capítulo 2 temos quatro práticas sugeridas
para você fazer. Nessas práticas você vai fixar o que vimos aqui e aprender a utilizar os comandos
que estudamos. Não adianta ficar só olhando o vídeo ou lendo a matéria sem praticar. Só
praticando é que você vai se acostumar a utilizar os conceitos e comandos que mostramos aqui.
Durante a leitura da matéria online lá da área do aluno vai ser pedido para vocês realizarem a
prática. Então, sigam essa orientação e não pulem para o próximo capítulo antes de realizar as
atividades práticas.

Também não deixem de fazer os exercícios do simulado do capítulo 2. E se ver que não está
conseguindo acertar as respostas, volte e estude novamente. O objetivo é que você verifique se
assimilou bem os conhecimentos exigidos.

E também não se esqueça que existem os fóruns e tutores para tirar todas as suas dúvidas da
matéria, das práticas e dos simulados. Então se durante o estudo surgir alguma dúvida não hesite
em utilizar esses recursos. É muito importante que você não deixe as dúvidas acumularem.

No mais, vamos ficando por aqui e nos encontramos na Área do Aluno ou nos próximos capítulos.

DlteC do Brasil
www.dltec.com.br | info@dltec.com.br | Curitiba – PR – Brasil
Copyright © 2012 · DlteC do Brasil - Seu portal de cursos online 41

Вам также может понравиться