SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
1                     Sistemas Operacionais                            Luiz Arthur


Gerenciamento de Arquivos

A necessidade de guardar informações em objetos que pudessem ser acessados
posteriormente de uma forma organizada vem de longe nos sistemas operacionais.

Para isso foram criados os sistemas de arquivos.

Nos sistemas de arquivos, de modo geral, os objetivos são organizar de forma
hierárquica os arquivos (informações) do sistema.

Todos os dados (arquivos e diretórios) são armazenados em sistemas de arquivos.
Um sistema de arquivo pode ser visto como um padrão de como os arquivos serão
gravados, armazenados, acessados, etc. Um sistema de arquivos é criado durante o
processo de formatação da unidade de armazenamento, existem vários tipos de
sistema de arquivos (ext2, ext3, reiselfs, ntfs, fat32, fat16, etc). Sistemas de
arquivos serão abordados posteriormente.

A identificação dos objetos de um sistema de arquivo no Linux é conhecida como
inode. Ele carrega as informações de onde o objeto está localizado no disco,
informações de segurança, data e hora de criação e última modificação, dentre
outras. Quando criamos um sistema de arquivo no Linux, cada dispositivo tem um
número finito de inodes que será diretamente proporcional ao número de arquivos
que este dispositivo poderá acomodar.
2                     Sistemas Operacionais                                Luiz Arthur


O sistema de arquivos Linux é semelhante a uma árvore de cabeça para baixo. No
topo da hierarquia do Linux existe um diretório raiz nomeado simplesmente de root
e identificado com o sinal “/”.

Atenção, não confunda diretório raiz (root) com o superusuário root.

A estrutura do sistema de arquivo Linux é definida por um padrão de mercado
chamado FHS. As distribuições não são obrigadas a seguir este padrão, mas elas
entendem a importância da localização dos arquivos e diretórios padronizados.


                                                                                bin
                                                /

                                                                              boot
                      proc

                                                                         dev
                          home
usuário1
                                  opt         mnt        lib           etc

   usuário2
3                             Sistemas Operacionais                                          Luiz Arthur


Gerenciamento Básico de Arquivos

Veremos agora alguns comandos para iniciarmos nossa atividade em um ambiente
Linux, a maioria deles é comum a qualquer UNIX, independente do fornecedor ou
distribuição.

- Listando o conteúdo de diretórios

O comando ls (list – listar) lista o conteúdo dos diretórios que informamos como
destino (alvo). Podemos utilizar o comando ls acompanhado ou não das opções de
listagem. O retorno do comando ls dependerá das opções fornecidas, porém será
sempre uma listagem dos arquivos, diretórios, links simbólicos (symbolic link) e
links fisícos (hard links) de um diretório qualquer.
                                                                       O $ ou o # na frente na linha
                                                                       simboliza o prompt de comando
Exemplo:                                                               e não faz parte de forma alguma
                                                                       do comando, assim o comando é
                                                                       apenas ls e não $ ls. Não digite
                                                                       $ ou # no comando!!!
$ ls /
bin       boot   dev   etc   home   lib   mnt   opt   proc   root   sbin   sys   tmp   usr   var

O comando ls têm a seguinte sintaxe:

$ ls [opções] [caminho/arquivo] [caminho1/arquivo1] ...
4                      Sistemas Operacionais                                       Luiz Arthur


onde:

   caminho/arquivo = Diretório/arquivo que será listado.
   caminho1/arquivo1 = Outro Diretório/arquivo que será listado.

Assim, podem ser feitas várias listagens de uma só vez.
                              Opções em negrito são importantes e as opções em negrito e
Opções do comando ls          sublinhadas são igualmente importantes e muito utilizadas.

-a, --all   Lista todos os arquivos (inclusive os ocultos) de um diretório.

-A, --almost-all Lista todos os arquivos (inclusive os ocultos) de um diretório,
exceto o diretório atual e o de nível anterior.

-B, --ignore-backups Não lista arquivos que terminam com ~ (Backup).

--color=PARAM Mostra os arquivos em cores diferentes, conforme o tipo de arquivo.
PARAM pode ser:

   never - Nunca lista em cores (mesma coisa de não usar o parâmetro --color).
   always - Sempre lista em cores conforme o tipo de arquivo.
   auto - Somente colore a listagem se estiver em um terminal.
5                      Sistemas Operacionais                                  Luiz Arthur


-d, --directory Lista os nomes dos diretórios ao invés do conteúdo.

-f Não classifica a listagem.

-F Insere um caracter após arquivos executáveis ('*'), diretórios ('/'), soquete ('='),
link simbólico ('@') e pipe ('|'). Seu uso é útil para identificar de forma fácil tipos de
arquivos nas listagens de diretórios.

-G, --no-group Oculta a coluna de grupo do arquivo.

-h, --human-readable Mostra o tamanho dos arquivos em Kbytes, Mbytes, Gbytes.

-H Faz o mesmo que -h, mas usa unidades de 1000 ao invés de 1024 para especificar
Kbytes, Mbytes, Gbytes.

-l Usa o formato longo para listagem de arquivos. Lista as permissões, data de
modificação, donos, grupos, etc.

-n Usa a identificação de usuário e grupo numérica ao invés dos nomes.

-L, --dereference Lista o arquivo original e não o link referente ao arquivo.

-o Usa a listagem longa sem os donos dos arquivos (mesma coisa que -lG).
6                    Sistemas Operacionais                           Luiz Arthur


-p Mesma coisa que -F, mas não inclui o símbolo '*' em arquivos executáveis. Esta
opção é típica de sistemas Linux.

-R Lista diretórios e sub-diretórios recursivamente.

--full-time Lista data e hora completa.

Classificação da listagem

A listagem pode ser classificada usando-se as seguintes opções:

-f   Não classifica, e usa -au para listar os arquivos.
-r   Inverte a ordem de classificação.
-c   Classifica pela data de alteração.
-X   Classifica pela extensão.
-U   Não classifica, lista os arquivos na ordem do diretório.

Uma listagem feita com o comando ls -la normalmente é mostrada da seguinte
maneira:

     -rwxr-xr--   1   gleydson user        8192 nov 4 16:00 teste
7                  Sistemas Operacionais                              Luiz Arthur


As explicações de cada parte da saída do comando ls:

-rwxr-xr--    São as permissões de acesso ao arquivo teste. A primeira letra (da
              esquerda) identifica o tipo do arquivo, se tiver um d é um diretório,
              se tiver um "-" é um arquivo normal.

1             Se for um diretório, mostra a quantidade de sub-diretórios existentes
              dentro dele. Caso for um arquivo, será 1.

gleydson      Nome do dono do arquivo teste.

user          Nome do grupo que o arquivo teste pertence.

8192          Tamanho do arquivo (em bytes).

nov           Mês da criação/ última modificação do arquivo.

4             Dia que o arquivo foi criado.

16:00         Hora em que o arquivo foi criado/modificado. Se o arquivo foi criado
              há mais de um ano, em seu lugar é mostrado o ano da criação do
              arquivo.

teste         Nome do arquivo.
8                             Sistemas Operacionais                                               Luiz Arthur
Exemplos com as opções ls mais utilizadas:

Para se ter uma listagem detalhada do diretório atual:

$ ls -l
total 0
drwx------             2 aula users 176 2006-03-19 16:51 Desktop

Uma listagem de todos os arquivos inclusive os ocultos:

$ ls -a
.     .bash_history          .dmrc           .kde       .local   .mcoprc      .screenrc    .Xauthority
..    Desktop                .ICEauthority   .kderc     .mcop    .qt          .ssh         .xsession-errors

Listar os arquivos arquivos do diretório raiz por ordem de alteração:

$ ls -c /
tmp       etc   dev    sys   proc   usr    opt   home   boot   root    var    bin   sbin   mnt   lib

Listar pela ordem da alteração inversa:

$ ls -cr /
lib       mnt   sbin   bin    var   root   boot   home   opt     usr   proc   sys   dev    etc   tmp

ou

$ ls -c -r /
lib       mnt   sbin   bin    var   root   boot   home   opt     usr   proc   sys   dev    etc   tmp
9                      Sistemas Operacionais                               Luiz Arthur


O comando ls assim como a maioria dos comandos possui a opção --help, que
normalmente exibe: sintaxe do comando, opções, parâmetros, dente outros.

Exemplo, de uma saída resumida do ls com à opção --help:
$ ls --help
Uso: ls [OPÇÃO]... [ARQUIVO]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuSUX nor --sort.

Argumentos obrigatórios para opções longas também o são para opções curtas
  -a, --all                  do not hide entries starting with .
  -A, --almost-all           do not list implied . and ..
      --author               print the author of each file
.
.
.
  -X                         sort alphabetically by entry extension
  -1                         list one file per line
      --help     display this help and exit
      --version output version information and exit

SIZE may be (or may be an integer optionally followed by) one of following:
kB 1000, K 1024, MB 1000*1000, M 1024*1024, and so on for G, T, P, E, Z, Y.

By default, color is not used to distinguish types of files. That is
equivalent to using --color=none. Using the --color option without the
optional WHEN argument is equivalent to using --color=always. With
--color=auto, color codes are output only if standard output is connected
to a terminal (tty).

Comunicar `bugs' para <bug-coreutils@gnu.org>.
10                Sistemas Operacionais                              Luiz Arthur


cd

O comando cd é utilizado para entrar em um diretório. É preciso ter a permissão de
execução para entrar em um diretório.

cd [diretório]

onde:

diretório – é o nome/caminho do diretório que deseja-se entrar.

Exemplos:

Usando o comando cd sem parâmetros ou cd ~, você irá ao seu diretório de usuário
(localizado no diretório /home).

cd /   retornará ao diretório raíz.
cd -   retornará ao diretório anteriormente acessado.
cd .. sobe um diretório, ou seja, onde você esta um nível mais próximo do /.
cd ../[diretório] sobe um diretório e entra imediatamente no próximo (por
exemplo, quando você está em /usr/sbin, você digita cd ../bin, o comando cd
retorna um diretório (/usr) e entra imediatamente no diretório bin (/usr/bin).
cd /usr/doc entra no diretório /usr/doc.
cd /tmp entra no diretório /tmp.
11                   Sistemas Operacionais                            Luiz Arthur


pwd

O comando pwd mostra o nome e caminho do diretório atual, que o usuário se
encontra.

Você pode usar o comando pwd para verificar em qual diretório se encontra caso
seu aviso de comandos (no prompt) não mostre isso.

Exemplo:

aula@darkstar$ pwd
/usr/doc

O comando pwd é muito útil para ajudar o usuário a se localizar quando este faz
muitas entradas e saídas dos diretórios e subdiretórios com o comando cd. Um bom
conselho é sempre passar como parâmetro a comandos o caminho inteiro onde se
encontra o diretório no qual se deseja chegar e não ir entrando um por um.

Exemplo, utilizar:

$ cd /usr/doc

ao invés de:
$ cd /usr
$ cd doc
12                   Sistemas Operacionais                             Luiz Arthur


mkdir

O comando mkdir cria um diretório no sistema. Um diretório é usado para
armazenar arquivos ou outros diretórios. O diretório pode ser entendido como uma
pasta onde você guarda seus papeis (arquivos). Como uma pessoa organizada, você
utilizará uma pastas para guardar cada tipo de documento, da mesma forma você
pode criar um diretório vendas para guardar seus arquivos relacionados com vendas
naquele local.

mkdir [opções] [caminho/diretório] [caminho1/diretório1]

onde:
caminho   É o caminho onde o diretório será criado.
diretório É o nome do diretório que será criado.

opções:
--verbose Mostra uma mensagem para cada diretório criado. As mensagens de
erro serão mostradas mesmo que esta opção não seja usada.

Para criar um novo diretório, você deve ter permissão de gravação. Por exemplo,
para criar um diretório em /tmp com o nome de teste que será usado para gravar
arquivos de teste, você deve usar o comando "mkdir /tmp/teste".

Podem ser criados mais de um diretório com um único comando (mkdir /tmp/teste
/tmp/teste1 /tmp/teste2).
13                   Sistemas Operacionais                              Luiz Arthur


rmdir

O rmdir remove um diretório do sistema. Este comando faz exatamente o contrário
do mkdir. O diretório a ser removido deve estar vazio e você deve ter permissão de
gravação para remove-lo.

rmdir [caminho/diretório] [caminho1/diretório1]

onde:

caminho   É o caminho do diretório que será removido.
diretório Nome do diretório que será removido.

Para remover um diretório é necessário que esteja-se um nível acima do diretório(s)
que será(ão) removido(s).

Para remover diretórios que contenham arquivos, use o comando rm com a opção -r.

Por exemplo, para remover o diretório /tmp/teste você não deve estar no diretório
/tmp/teste para executar o comando rmdir /tmp/teste.

Atenção, este comando é muito perigoso, pois ele apaga os diretórios (e arquivos
desse diretório com a opção -r), por isso sempre passe o caminho exato que será
apagado para que não haja erros, lembrando que o usuário root pode apagar todo o
sistema com o comando rmdir.
14                     Sistemas Operacionais                           Luiz Arthur


Os comandos de listagem e manipulação de diretórios devem ser estudados a fundo
por todos que pretendem ser administradores de sistemas e é somente praticando
que se adquire experiencia e propriedade para se trabalhar com diretórios.

Atividade 1

1.1 Liste o diretório /root.

1.2 Liste mostrando todos os arquivos e atributos de forma detalhada do diretório
/tmp.

1.3 Entre dentro do diretório /usr/doc e depois liste os arquivos apresentando o
tamanho (de forma compreensível pelos humanos) dos diretórios e arquivos
presentes neste diretório.

1.4 Crie dentro do diretório /tmp um diretório chamado atividade2.

1.5 Crie outro diretório chamado Atividade2 dentro do diretório /tmp, e depois
crie um subdiretório chamado sub1 e outro chamado sub2 dentro do subdiretório
Atividade2.

1.6 Apague o diretório /tmp/atividade2.

1.7 Apague o diretório /tmp/Atividade2 e todos os seus subdiretórios.
15                   Sistemas Operacionais                              Luiz Arthur


Comandos para manipulação de Arquivos

Os arquivos são agrupamentos de bytes que podem ser do tipo texto ou binário.
Assim como ocorre com os diretórios os arquivos são muito importantes para o
sistema, desta forma, saber mante-los é muito importante para um administrador de
sistema, a seguir serão mostrados alguns comando para a manipulação e
gerenciamento de arquivos, alguns desses comando também se aplicam a diretórios
que nada mais são do que arquivos um pouco diferentes.

cat

O comando cat mostra o conteúdo de um arquivo binário ou texto.

cat [opções] [diretório/arquivo] [diretório1/arquivo1]

diretório/arquivo     Localização do arquivo que deseja visualizar o conteúdo.

Opções:

-n, --number Mostra o número das linhas enquanto o conteúdo do arquivo é
             mostrado.

-s, --squeeze-blank Não mostra mais que uma linha em branco entre um
                    parágrafo e outro.
16                   Sistemas Operacionais                             Luiz Arthur


O comando cat concatena arquivos, imprime seu conteúdo na tela e ainda pode
receber texto digitado pelo teclado e enviar para um arquivo.

Exemplos:

Para criar um arquivo chamado teste.txt execute o comando:

$ cat > teste.txt
Olá Mundo Linux

Agora você pode digitar qualquer texto. Quando terminar, pressione as teclas
Crtl+d em uma linha vazia para finalizar a entrada de dados e salvar o arquivo
teste.txt

Para ver o conteúdo do arquivo teste.txt execute:

$ cat teste.txt
Olá Mundo Linux

O cat também pode servir para concatenar arquivos. No comando abaixo o
conteúdo de texto.txt é substítuido pelo texto1.txt.
$ cat texto1.txt > texto.txt

Para adicionar o conteúdo e texto1.txt no final do arquivo texto.txt o comando é:
$ cat texto1.txt >> texto.txt
17                Sistemas Operacionais                             Luiz Arthur


rm

O comando rm apaga arquivos. Também pode ser usado para apagar diretórios e
sub-diretórios vazios ou que contenham arquivos.

rm [opções][caminho][arquivo/diretório] [caminho1][arquivo1/diretório1]

onde:
caminho    Localização do arquivo que deseja-se apagar. Se omitido, assume que o
           arquivo esteja no diretório atual.

arquivo/diretório     Arquivo que será apagado.

opções:
-i, --interactive     Pergunta antes de remover, esta é ativada por padrão.
-v, --verbose         Mostra os arquivos na medida que são removidos.
-r, --recursive       Usado para remover arquivos em sub-diretórios. Esta opção
                      também pode ser usada para remover sub-diretórios.
-f, --force           Remove os arquivos fazer perguntas.
-- arquivo            Remove arquivos/diretórios que contém caracteres especiais.

O separador "--" funciona com todos os comandos do shell e permite que os
caracteres especiais como "*", "?", "-", etc. sejam interpretados como caracteres
comuns.
18                   Sistemas Operacionais                            Luiz Arthur


Use com atenção o comando rm, uma vez que os arquivos e diretórios forem
apagados, eles não poderão ser mais recuperados.

Exemplos do uso do comando rm:

rm teste.txt Apaga o arquivo teste.txt no diretório atual.

rm *.txt      Apaga todos os arquivos do diretório atual que terminam com .txt.

rm *.txt teste.novo      Apaga todos os arquivos do diretório atual que terminam
                         com .txt e também o arquivo teste.novo.

rm -rf /tmp/teste/*       Apaga todos os arquivos e sub-diretórios do diretório
                         /tmp/teste mas mantém o sub-diretório /tmp/teste.

rm -rf /tmp/teste         Apaga todos os arquivos e sub-diretórios do diretório
                         /tmp/teste, inclusive /tmp/teste.

rm -f -- --arquivo-- - Remove o arquivo de nome - -arquivo--.
19                Sistemas Operacionais                                Luiz Arthur


cp

O comando cp copia os arquivos para outros arquivos ou para diretórios. O comando
cp pode copiar um arquivo ou múltiplos arquivos.

cp [opções] [origem] [destino]

onde:

origem     Arquivo que será copiado. Podem ser especificados mais de um arquivo
para ser copiado usando "coringas" (veremos coringas a seguir).

Destino     O caminho ou nome de arquivo onde será copiado. Se o destino for um
diretório, os arquivos de origem serão copiados para dentro do diretório.

opções:
i, --interactive      Pergunta antes de substituir um arquivo existente.

-f, --force           Não pergunta, substitui todos os arquivos caso já exista.

-r                    Copia arquivos dos diretórios e subdiretórios da origem para
                      o destino. É recomendável usar -R ao invés de -r.

-R, --recursive       Copia arquivos e sub-diretórios (como a opção -r) e também
                      os arquivos especiais e dispositivos.
20                Sistemas Operacionais                                  Luiz Arthur


-v, --verbose         Mostra os arquivos enquanto estão sendo copiados.

-s, --simbolic-link Cria link simbólico ao invés de copiar.

-l, --link            Faz o link no destino ao invés de copiar os arquivos.

-p, --preserve        Preserva atributos do arquivo, se for possível.

-u, --update          Copia somente se o arquivo de origem é mais novo que o
                      arquivo de destino ou quando o arquivo de destino não
                      existe.

-x                    Não copia arquivos que estão localizados em um sistema de
                      arquivos diferente de onde a cópia iniciou.
21                  Sistemas Operacionais                                  Luiz Arthur


Então, o comando cp copia arquivos da ORIGEM para o DESTINO. Ambos origem e
destino terão o mesmo conteúdo após a cópia.

Exemplos:

cp teste.txt teste1.txt     Copia o arquivo teste.txt para teste1.txt.

cp teste.txt /tmp           Copia o arquivo teste.txt para dentro do diretório
                            /tmp.

cp * /tmp                   Copia todos os arquivos do diretório atual para /tmp.

cp /bin/* .    Copia todos os arquivos do diretório /bin para o diretório em que
              nos encontramos no momento.

cp -R /bin /tmp       Copia o diretório /bin e todos os arquivos/sub-diretórios
                     existentes para o diretório /tmp.

cp -R /bin/* /tmp    Copia todos os arquivos do diretório /bin (exceto o diretório
                     /bin) e todos os arquivos/sub-diretórios existentes dentro
                     dele para /tmp.

cp -R /bin /tmp      Copia todos os arquivos e o diretório /bin para /tmp.
22                Sistemas Operacionais                             Luiz Arthur


mv

Move ou renomeia arquivos e diretórios. O processo é semelhante ao do comando cp
mas o arquivo de origem é apagado após o término da cópia.

mv [opções] [origem] [destino]

onde:

origem    Arquivo/diretório de origem.
destino   Local onde será movido ou novo nome do arquivo/diretório.

opções:

-f, --force          Substitui o arquivo de destino sem perguntar.

-i, --interactive    Pergunta antes de substituir. É o padrão.

-v, --verbose        Mostra os arquivos que estão sendo movidos.

-u, --update         Move somente arquivos antigos, ou novos arquivos.
23                  Sistemas Operacionais                            Luiz Arthur


Então, o comando mv copia um arquivo da ORIGEM para o DESTINO (semelhante ao
cp), mas após a cópia, o arquivo de ORIGEM é apagado.

Exemplos:

mv teste.txt teste1.txt

Muda o nome do arquivo teste.txt para teste1.txt.

mv teste.txt /tmp

Move o arquivo teste.txt para /tmp. Lembre-se que o arquivo de origem é apagado
após ser movido.

mv teste.txt teste.new (supondo que teste.new já exista)

Copia o arquivo teste.txt por cima de teste.new e apaga teste.txt após terminar
a copía.
24                      Sistemas Operacionais                                   Luiz Arthur
Atividade 2

2.1 Crie um arquivo texto chamado atividade3.txt, e coloque o conteúdo: “Ola mundo
cruel”

2.2 Crie um arquivo texto chamado Atividade3.1.txt, e coloque o conteúdo: “OLA MUNDO
CRUEL”.

2.3 Visualize o conteúdo dos arquivos atividade3.txt e Atividade3.1.txt.

2.4 Crie um arquivo chamado chamado linux.txt, e coloque o conteúdo: “do Linux”.

2.5 Substitua o conteúdo do arquivo linux.txt ao arquivo atividade3.txt e visualize os
arquivos.

2.6 Acrescente o conteúdo do arquivo linux.txt ao arquivo Atividade3.1.txt e visualize os
arquivos.

2.7 Crie um diretório chamado aula3 e copie o arquivo atividade3.txt para este diretório.

2.8 Mova o arquivo Atividade3.1.txt para o diretório aula3.

2.9 Copie o conteúdo do diretório aula3 para o diretório /tmp

2.10 Mova todos os arquivos txt e o diretório aula3 bem como seu conteúdo para o diretório
/tmp/atividade3/
25                    Sistemas Operacionais                               Luiz Arthur


Coringas

Coringas (ou referência global) é um recurso usado para especificar um ou mais
arquivos ou diretórios do sistema de uma só vez. Este é um recurso permite que
você faça a filtragem do que será listado, copiado, apagado, etc.

São usados 4 tipos de coringas no GNU/Linux:

"*" - Faz referência a um nome completo/restante de um arquivo/diretório.
 "?" - Faz referência a uma letra naquela posição.

[padrão] - Faz referência a uma faixa de caracteres de um arquivo/diretório.

Padrão pode ser:
[a-z][0-9] - Faz referência a caracteres de a até z seguido de um caracter de 0 até
9.

[a,z][1,0] - Faz a referência aos caracteres a e z seguido de um caracter 1 ou 0
naquela posição.

[a-z,1,0] - Faz referência a intervalo de caracteres de a até z ou 1 ou 0 naquela
posição.
26                   Sistemas Operacionais                            Luiz Arthur


A procura de caracteres é "case sensitive" assim se você deseja que sejam
localizados todos os caracteres alfabéticos você deve usar [a-zA-Z].

Caso a expressão seja precedida por um ^, faz referência a qualquer caracter
exceto o da expressão. Por exemplo [^abc] faz referência a qualquer caracter
exceto a, b e c.

Vamos dizer que tenha 5 arquivo no diretório /usr/teste: teste1.txt, teste2.txt,
teste3.txt, teste4.new, teste5.new.

Caso deseje listar todos os arquivos do diretório /usr/teste você pode usar o
coringa "*" para especificar todos os arquivos do diretório:

$ cd /usr/teste e ls * ou ls /usr/teste/*

Agora para listar todos os arquivos teste1.txt, teste2.txt, teste3.txt exceto
teste4.new, teste5.new, podemos usar inicialmente 3 métodos:

Usando o comando ls *.txt que pega todos os arquivos que começam com
qualquer nome e terminam com .txt.

Usando o comando ls teste?.txt, que pega todos os arquivos que começam com o
nome teste, tenham qualquer caracter no lugar do coringa ? e terminem com .txt.
27                   Sistemas Operacionais                            Luiz Arthur




Com o exemplo acima teste*.txt também faria a mesma coisa, mas se também
tivéssemos um arquivo chamado teste10.txt este também seria listado.

Usando o comando ls teste[1-3].txt, que pega todos os arquivos que começam
com o nome teste, tenham qualquer caracter entre o número 1-3 no lugar da 6a
letra e terminem com .txt. Neste caso se obtém uma filtragem mais exata, pois o
coringa ? especifica qualquer caracter naquela posição e [] especifica números,
letras ou intervalo que será usado.

Agora para listar somente teste4.new e teste5.new podemos usar os seguintes
métodos:

ls *.new que lista todos os arquivos que terminam com .new

ls teste?.new que lista todos os arquivos que começam com teste, contenham
qualquer caracter na posição do coringa ? e terminem com .new.

ls teste[4,5].* que lista todos os arquivos que começam com teste contenham
números de 4 e 5 naquela posição e terminem com qualquer extensão.
28   Sistemas Operacionais   Luiz Arthur

Más contenido relacionado

La actualidad más candente

Introdução ao Linux - Aula 01
Introdução ao Linux - Aula 01Introdução ao Linux - Aula 01
Introdução ao Linux - Aula 01Ivaldo Cardoso
 
Sistema Operativo Open Source
Sistema Operativo Open SourceSistema Operativo Open Source
Sistema Operativo Open SourceDiogo Silva
 
Resumo sistemas operacionais
Resumo sistemas operacionaisResumo sistemas operacionais
Resumo sistemas operacionaisDaniel Brandão
 
Aula sobre Placa-mãe
Aula sobre Placa-mãeAula sobre Placa-mãe
Aula sobre Placa-mãeFilipe Flores
 
Linux Como Tudo Começou
Linux Como Tudo ComeçouLinux Como Tudo Começou
Linux Como Tudo Começouguestaa94fe
 
Introdução à Informática - Módulo 2 - Conceitos Básicos
Introdução à Informática - Módulo 2 - Conceitos BásicosIntrodução à Informática - Módulo 2 - Conceitos Básicos
Introdução à Informática - Módulo 2 - Conceitos BásicosMinistério Público da Paraíba
 
Comandos do linux
Comandos do linuxComandos do linux
Comandos do linuxPeslPinguim
 
Funções e caracteristicas de um so
Funções e caracteristicas de um soFunções e caracteristicas de um so
Funções e caracteristicas de um soMiriamMiguel
 
sistemas operativos.ppt
sistemas operativos.pptsistemas operativos.ppt
sistemas operativos.pptssuserb52d9e
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas OperativosPmpc10
 
Sistemas Operacionais (Windows X Linux)
Sistemas Operacionais (Windows X Linux)Sistemas Operacionais (Windows X Linux)
Sistemas Operacionais (Windows X Linux)Paulo Guimarães
 
Sistema de ficheiros
Sistema de ficheirosSistema de ficheiros
Sistema de ficheirosATEC
 

La actualidad más candente (20)

Introdução ao Linux - Aula 01
Introdução ao Linux - Aula 01Introdução ao Linux - Aula 01
Introdução ao Linux - Aula 01
 
Aula 5 manipulacao de arquivos e pastas
Aula 5   manipulacao de arquivos e pastasAula 5   manipulacao de arquivos e pastas
Aula 5 manipulacao de arquivos e pastas
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Sistema Operativo Open Source
Sistema Operativo Open SourceSistema Operativo Open Source
Sistema Operativo Open Source
 
Resumo sistemas operacionais
Resumo sistemas operacionaisResumo sistemas operacionais
Resumo sistemas operacionais
 
Aula sobre Placa-mãe
Aula sobre Placa-mãeAula sobre Placa-mãe
Aula sobre Placa-mãe
 
Linux Como Tudo Começou
Linux Como Tudo ComeçouLinux Como Tudo Começou
Linux Como Tudo Começou
 
Sistemas de Arquivos do Windows
Sistemas de Arquivos do WindowsSistemas de Arquivos do Windows
Sistemas de Arquivos do Windows
 
Introdução à Informática - Módulo 2 - Conceitos Básicos
Introdução à Informática - Módulo 2 - Conceitos BásicosIntrodução à Informática - Módulo 2 - Conceitos Básicos
Introdução à Informática - Módulo 2 - Conceitos Básicos
 
Comandos do linux
Comandos do linuxComandos do linux
Comandos do linux
 
Funções e caracteristicas de um so
Funções e caracteristicas de um soFunções e caracteristicas de um so
Funções e caracteristicas de um so
 
sistemas operativos.ppt
sistemas operativos.pptsistemas operativos.ppt
sistemas operativos.ppt
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Sistemas Operacionais (Windows X Linux)
Sistemas Operacionais (Windows X Linux)Sistemas Operacionais (Windows X Linux)
Sistemas Operacionais (Windows X Linux)
 
Aula- Virtualização
Aula- VirtualizaçãoAula- Virtualização
Aula- Virtualização
 
Sistema de ficheiros
Sistema de ficheirosSistema de ficheiros
Sistema de ficheiros
 
Aula 01 chipset
Aula 01   chipsetAula 01   chipset
Aula 01 chipset
 
Aula 5 sistemas operacionais
Aula 5   sistemas operacionaisAula 5   sistemas operacionais
Aula 5 sistemas operacionais
 
Aula gerenciamento de arquivos e pastas
Aula   gerenciamento de arquivos e pastasAula   gerenciamento de arquivos e pastas
Aula gerenciamento de arquivos e pastas
 
Virtualização - Máquinas Virtuais
Virtualização - Máquinas VirtuaisVirtualização - Máquinas Virtuais
Virtualização - Máquinas Virtuais
 

Destacado

Gerência de Armazenamento: Sistemas de Entrada e Saída
Gerência de Armazenamento: Sistemas de Entrada e SaídaGerência de Armazenamento: Sistemas de Entrada e Saída
Gerência de Armazenamento: Sistemas de Entrada e SaídaAlexandre Duarte
 
Sistemas operacionais aula 12
Sistemas operacionais aula 12Sistemas operacionais aula 12
Sistemas operacionais aula 12Anderson Henrique
 
Sistemas operacionais aula 09
Sistemas operacionais aula 09Sistemas operacionais aula 09
Sistemas operacionais aula 09Anderson Henrique
 
Sistemas operacionais aula 11
Sistemas operacionais aula 11Sistemas operacionais aula 11
Sistemas operacionais aula 11Anderson Henrique
 
Sistemas operacionais aula 13
Sistemas operacionais aula 13Sistemas operacionais aula 13
Sistemas operacionais aula 13Anderson Henrique
 
Sistemas operacionais Aula 08
Sistemas operacionais Aula 08Sistemas operacionais Aula 08
Sistemas operacionais Aula 08Anderson Henrique
 
Aula 03 funcionalidades dos sistemas operacionais
Aula 03   funcionalidades dos sistemas operacionaisAula 03   funcionalidades dos sistemas operacionais
Aula 03 funcionalidades dos sistemas operacionaisjotaulio
 
Estruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisEstruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisCid de Andrade
 
Tipos de Sistemas Operacionais
Tipos de Sistemas OperacionaisTipos de Sistemas Operacionais
Tipos de Sistemas OperacionaisLuciano Crecente
 
Permissão de Acesso - Sistema de Arquivos Linux
Permissão de Acesso - Sistema de Arquivos LinuxPermissão de Acesso - Sistema de Arquivos Linux
Permissão de Acesso - Sistema de Arquivos LinuxWellington Oliveira
 
Gerência de Armazenamento: Implementação do Sistema de Arquivos
Gerência de Armazenamento: Implementação do Sistema de ArquivosGerência de Armazenamento: Implementação do Sistema de Arquivos
Gerência de Armazenamento: Implementação do Sistema de ArquivosAlexandre Duarte
 
Sistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSSistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSCleber Ramos
 
Sistema Operacional - Aula002
Sistema Operacional - Aula002Sistema Operacional - Aula002
Sistema Operacional - Aula002Cláudio Amaral
 

Destacado (20)

Gerência de Armazenamento: Sistemas de Entrada e Saída
Gerência de Armazenamento: Sistemas de Entrada e SaídaGerência de Armazenamento: Sistemas de Entrada e Saída
Gerência de Armazenamento: Sistemas de Entrada e Saída
 
Sistemas operacionais 05
Sistemas operacionais 05Sistemas operacionais 05
Sistemas operacionais 05
 
Sistemas operacionais aula 12
Sistemas operacionais aula 12Sistemas operacionais aula 12
Sistemas operacionais aula 12
 
Sistemas operacionais 07
Sistemas operacionais 07Sistemas operacionais 07
Sistemas operacionais 07
 
Sistemas operacionais aula 09
Sistemas operacionais aula 09Sistemas operacionais aula 09
Sistemas operacionais aula 09
 
Sistemas operacionais aula 11
Sistemas operacionais aula 11Sistemas operacionais aula 11
Sistemas operacionais aula 11
 
Sistemas operacionais aula 13
Sistemas operacionais aula 13Sistemas operacionais aula 13
Sistemas operacionais aula 13
 
Sistemas operacionais Aula 08
Sistemas operacionais Aula 08Sistemas operacionais Aula 08
Sistemas operacionais Aula 08
 
Sistemas operacionais 02
Sistemas operacionais 02Sistemas operacionais 02
Sistemas operacionais 02
 
Aula 03 funcionalidades dos sistemas operacionais
Aula 03   funcionalidades dos sistemas operacionaisAula 03   funcionalidades dos sistemas operacionais
Aula 03 funcionalidades dos sistemas operacionais
 
Estruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisEstruturas de Sistemas Operacionais
Estruturas de Sistemas Operacionais
 
Tipos de Sistemas Operacionais
Tipos de Sistemas OperacionaisTipos de Sistemas Operacionais
Tipos de Sistemas Operacionais
 
Permissão de Acesso - Sistema de Arquivos Linux
Permissão de Acesso - Sistema de Arquivos LinuxPermissão de Acesso - Sistema de Arquivos Linux
Permissão de Acesso - Sistema de Arquivos Linux
 
Sistemas operacionais 05
Sistemas operacionais 05Sistemas operacionais 05
Sistemas operacionais 05
 
Gerência de Armazenamento: Implementação do Sistema de Arquivos
Gerência de Armazenamento: Implementação do Sistema de ArquivosGerência de Armazenamento: Implementação do Sistema de Arquivos
Gerência de Armazenamento: Implementação do Sistema de Arquivos
 
Sistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSSistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFS
 
Sistemas operacionais 04
Sistemas operacionais 04Sistemas operacionais 04
Sistemas operacionais 04
 
Sistema Operacional - Aula002
Sistema Operacional - Aula002Sistema Operacional - Aula002
Sistema Operacional - Aula002
 
Sistemas operacionais 03
Sistemas operacionais 03Sistemas operacionais 03
Sistemas operacionais 03
 
Sistemas operacionais aula 03
Sistemas operacionais aula 03Sistemas operacionais aula 03
Sistemas operacionais aula 03
 

Similar a Sistemas Operacionais - Gnu/Linux Gerenciamento de Arquivos

Comandos Linux
Comandos LinuxComandos Linux
Comandos Linuxlol
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxVirgínia
 
Apostila comandos unix
Apostila   comandos unixApostila   comandos unix
Apostila comandos unixgravetim
 
Apostila de comandos linux resumidos (universidade católica de brasília)
Apostila de comandos linux   resumidos (universidade católica de brasília)Apostila de comandos linux   resumidos (universidade católica de brasília)
Apostila de comandos linux resumidos (universidade católica de brasília)SENAC RIO
 
Linux-formatado.pdf
Linux-formatado.pdfLinux-formatado.pdf
Linux-formatado.pdfssuserf964b1
 
Intro a Sistemas Abertos - Gerenciamento de Arquivos.pdf
Intro a Sistemas Abertos - Gerenciamento de Arquivos.pdfIntro a Sistemas Abertos - Gerenciamento de Arquivos.pdf
Intro a Sistemas Abertos - Gerenciamento de Arquivos.pdfSidneyMeloFrazao
 
SAC - Seismic Analyses Code
SAC - Seismic Analyses CodeSAC - Seismic Analyses Code
SAC - Seismic Analyses CodeGeorge Franca
 
SAC - Seismic Analyses Code
SAC - Seismic Analyses CodeSAC - Seismic Analyses Code
SAC - Seismic Analyses CodeGeorge Franca
 
Estrutura de diretorios no Debian
Estrutura de diretorios no DebianEstrutura de diretorios no Debian
Estrutura de diretorios no DebianJoao Felipe
 

Similar a Sistemas Operacionais - Gnu/Linux Gerenciamento de Arquivos (20)

Aula 06 comandos linux
Aula 06   comandos linuxAula 06   comandos linux
Aula 06 comandos linux
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Comandos Linux
Comandos LinuxComandos Linux
Comandos Linux
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Apostila(1)
Apostila(1)Apostila(1)
Apostila(1)
 
725
725725
725
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições Linux
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Minicurso linux
Minicurso linuxMinicurso linux
Minicurso linux
 
Comandos do linux
Comandos do linuxComandos do linux
Comandos do linux
 
Comandos Unix
Comandos UnixComandos Unix
Comandos Unix
 
Apostila comandos unix
Apostila   comandos unixApostila   comandos unix
Apostila comandos unix
 
Apostila de comandos linux resumidos (universidade católica de brasília)
Apostila de comandos linux   resumidos (universidade católica de brasília)Apostila de comandos linux   resumidos (universidade católica de brasília)
Apostila de comandos linux resumidos (universidade católica de brasília)
 
Entendendo FHS - Palestra Debian Day 2013
Entendendo FHS - Palestra Debian Day 2013Entendendo FHS - Palestra Debian Day 2013
Entendendo FHS - Palestra Debian Day 2013
 
Linux-formatado.pdf
Linux-formatado.pdfLinux-formatado.pdf
Linux-formatado.pdf
 
Intro a Sistemas Abertos - Gerenciamento de Arquivos.pdf
Intro a Sistemas Abertos - Gerenciamento de Arquivos.pdfIntro a Sistemas Abertos - Gerenciamento de Arquivos.pdf
Intro a Sistemas Abertos - Gerenciamento de Arquivos.pdf
 
SAC - Aula 1
SAC - Aula 1SAC - Aula 1
SAC - Aula 1
 
SAC - Seismic Analyses Code
SAC - Seismic Analyses CodeSAC - Seismic Analyses Code
SAC - Seismic Analyses Code
 
SAC - Seismic Analyses Code
SAC - Seismic Analyses CodeSAC - Seismic Analyses Code
SAC - Seismic Analyses Code
 
Estrutura de diretorios no Debian
Estrutura de diretorios no DebianEstrutura de diretorios no Debian
Estrutura de diretorios no Debian
 

Más de Luiz Arthur

Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?
Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?
Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?Luiz Arthur
 
Desafios da cibersegurança - ontem, hoje e amanhã
Desafios da cibersegurança - ontem, hoje e amanhãDesafios da cibersegurança - ontem, hoje e amanhã
Desafios da cibersegurança - ontem, hoje e amanhãLuiz Arthur
 
Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...
Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...
Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...Luiz Arthur
 
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...Luiz Arthur
 
Detecção de alertas de segurança em redes de computadores usando redes sociai...
Detecção de alertas de segurança em redes de computadores usando redes sociai...Detecção de alertas de segurança em redes de computadores usando redes sociai...
Detecção de alertas de segurança em redes de computadores usando redes sociai...Luiz Arthur
 
Evaluating the Utilization of Twitter Messages as a Source of Security Alerts
Evaluating the Utilization of Twitter Messages as a Source of Security AlertsEvaluating the Utilization of Twitter Messages as a Source of Security Alerts
Evaluating the Utilization of Twitter Messages as a Source of Security AlertsLuiz Arthur
 
Análise de Mensagens de Segurança Postadas no Twitter
Análise de Mensagens de Segurança Postadas no TwitterAnálise de Mensagens de Segurança Postadas no Twitter
Análise de Mensagens de Segurança Postadas no TwitterLuiz Arthur
 
match making e propaganda na web
match making e propaganda na webmatch making e propaganda na web
match making e propaganda na webLuiz Arthur
 
Mineração de dados no Gmail e Facebook
Mineração de dados no Gmail e FacebookMineração de dados no Gmail e Facebook
Mineração de dados no Gmail e FacebookLuiz Arthur
 
Invasao kernel.org
Invasao kernel.orgInvasao kernel.org
Invasao kernel.orgLuiz Arthur
 
Núcleo do Linux (Kernel Linux)
Núcleo do Linux (Kernel Linux)Núcleo do Linux (Kernel Linux)
Núcleo do Linux (Kernel Linux)Luiz Arthur
 
Palestra Ferramentas de Segurança Open Source v.2
Palestra Ferramentas de Segurança Open Source v.2Palestra Ferramentas de Segurança Open Source v.2
Palestra Ferramentas de Segurança Open Source v.2Luiz Arthur
 
Palestra mau uso da tecnologia
Palestra mau uso da tecnologiaPalestra mau uso da tecnologia
Palestra mau uso da tecnologiaLuiz Arthur
 
UTFPR-inventario-patrimonio-laboratorio-e105
UTFPR-inventario-patrimonio-laboratorio-e105UTFPR-inventario-patrimonio-laboratorio-e105
UTFPR-inventario-patrimonio-laboratorio-e105Luiz Arthur
 
01 programação - introdução computação
01 programação - introdução computação01 programação - introdução computação
01 programação - introdução computaçãoLuiz Arthur
 
Bibliografia recomendada - programação C
Bibliografia recomendada - programação CBibliografia recomendada - programação C
Bibliografia recomendada - programação CLuiz Arthur
 
Bibliografia recomendada-programacao-python
Bibliografia recomendada-programacao-pythonBibliografia recomendada-programacao-python
Bibliografia recomendada-programacao-pythonLuiz Arthur
 
Bibliografia recomendada-seguranca
Bibliografia recomendada-segurancaBibliografia recomendada-seguranca
Bibliografia recomendada-segurancaLuiz Arthur
 
Bibliografia recomendada-redes
Bibliografia recomendada-redesBibliografia recomendada-redes
Bibliografia recomendada-redesLuiz Arthur
 

Más de Luiz Arthur (20)

Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?
Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?
Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?
 
Desafios da cibersegurança - ontem, hoje e amanhã
Desafios da cibersegurança - ontem, hoje e amanhãDesafios da cibersegurança - ontem, hoje e amanhã
Desafios da cibersegurança - ontem, hoje e amanhã
 
Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...
Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...
Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...
 
NAPSOL
NAPSOLNAPSOL
NAPSOL
 
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
 
Detecção de alertas de segurança em redes de computadores usando redes sociai...
Detecção de alertas de segurança em redes de computadores usando redes sociai...Detecção de alertas de segurança em redes de computadores usando redes sociai...
Detecção de alertas de segurança em redes de computadores usando redes sociai...
 
Evaluating the Utilization of Twitter Messages as a Source of Security Alerts
Evaluating the Utilization of Twitter Messages as a Source of Security AlertsEvaluating the Utilization of Twitter Messages as a Source of Security Alerts
Evaluating the Utilization of Twitter Messages as a Source of Security Alerts
 
Análise de Mensagens de Segurança Postadas no Twitter
Análise de Mensagens de Segurança Postadas no TwitterAnálise de Mensagens de Segurança Postadas no Twitter
Análise de Mensagens de Segurança Postadas no Twitter
 
match making e propaganda na web
match making e propaganda na webmatch making e propaganda na web
match making e propaganda na web
 
Mineração de dados no Gmail e Facebook
Mineração de dados no Gmail e FacebookMineração de dados no Gmail e Facebook
Mineração de dados no Gmail e Facebook
 
Invasao kernel.org
Invasao kernel.orgInvasao kernel.org
Invasao kernel.org
 
Núcleo do Linux (Kernel Linux)
Núcleo do Linux (Kernel Linux)Núcleo do Linux (Kernel Linux)
Núcleo do Linux (Kernel Linux)
 
Palestra Ferramentas de Segurança Open Source v.2
Palestra Ferramentas de Segurança Open Source v.2Palestra Ferramentas de Segurança Open Source v.2
Palestra Ferramentas de Segurança Open Source v.2
 
Palestra mau uso da tecnologia
Palestra mau uso da tecnologiaPalestra mau uso da tecnologia
Palestra mau uso da tecnologia
 
UTFPR-inventario-patrimonio-laboratorio-e105
UTFPR-inventario-patrimonio-laboratorio-e105UTFPR-inventario-patrimonio-laboratorio-e105
UTFPR-inventario-patrimonio-laboratorio-e105
 
01 programação - introdução computação
01 programação - introdução computação01 programação - introdução computação
01 programação - introdução computação
 
Bibliografia recomendada - programação C
Bibliografia recomendada - programação CBibliografia recomendada - programação C
Bibliografia recomendada - programação C
 
Bibliografia recomendada-programacao-python
Bibliografia recomendada-programacao-pythonBibliografia recomendada-programacao-python
Bibliografia recomendada-programacao-python
 
Bibliografia recomendada-seguranca
Bibliografia recomendada-segurancaBibliografia recomendada-seguranca
Bibliografia recomendada-seguranca
 
Bibliografia recomendada-redes
Bibliografia recomendada-redesBibliografia recomendada-redes
Bibliografia recomendada-redes
 

Sistemas Operacionais - Gnu/Linux Gerenciamento de Arquivos

  • 1. 1 Sistemas Operacionais Luiz Arthur Gerenciamento de Arquivos A necessidade de guardar informações em objetos que pudessem ser acessados posteriormente de uma forma organizada vem de longe nos sistemas operacionais. Para isso foram criados os sistemas de arquivos. Nos sistemas de arquivos, de modo geral, os objetivos são organizar de forma hierárquica os arquivos (informações) do sistema. Todos os dados (arquivos e diretórios) são armazenados em sistemas de arquivos. Um sistema de arquivo pode ser visto como um padrão de como os arquivos serão gravados, armazenados, acessados, etc. Um sistema de arquivos é criado durante o processo de formatação da unidade de armazenamento, existem vários tipos de sistema de arquivos (ext2, ext3, reiselfs, ntfs, fat32, fat16, etc). Sistemas de arquivos serão abordados posteriormente. A identificação dos objetos de um sistema de arquivo no Linux é conhecida como inode. Ele carrega as informações de onde o objeto está localizado no disco, informações de segurança, data e hora de criação e última modificação, dentre outras. Quando criamos um sistema de arquivo no Linux, cada dispositivo tem um número finito de inodes que será diretamente proporcional ao número de arquivos que este dispositivo poderá acomodar.
  • 2. 2 Sistemas Operacionais Luiz Arthur O sistema de arquivos Linux é semelhante a uma árvore de cabeça para baixo. No topo da hierarquia do Linux existe um diretório raiz nomeado simplesmente de root e identificado com o sinal “/”. Atenção, não confunda diretório raiz (root) com o superusuário root. A estrutura do sistema de arquivo Linux é definida por um padrão de mercado chamado FHS. As distribuições não são obrigadas a seguir este padrão, mas elas entendem a importância da localização dos arquivos e diretórios padronizados. bin / boot proc dev home usuário1 opt mnt lib etc usuário2
  • 3. 3 Sistemas Operacionais Luiz Arthur Gerenciamento Básico de Arquivos Veremos agora alguns comandos para iniciarmos nossa atividade em um ambiente Linux, a maioria deles é comum a qualquer UNIX, independente do fornecedor ou distribuição. - Listando o conteúdo de diretórios O comando ls (list – listar) lista o conteúdo dos diretórios que informamos como destino (alvo). Podemos utilizar o comando ls acompanhado ou não das opções de listagem. O retorno do comando ls dependerá das opções fornecidas, porém será sempre uma listagem dos arquivos, diretórios, links simbólicos (symbolic link) e links fisícos (hard links) de um diretório qualquer. O $ ou o # na frente na linha simboliza o prompt de comando Exemplo: e não faz parte de forma alguma do comando, assim o comando é apenas ls e não $ ls. Não digite $ ou # no comando!!! $ ls / bin boot dev etc home lib mnt opt proc root sbin sys tmp usr var O comando ls têm a seguinte sintaxe: $ ls [opções] [caminho/arquivo] [caminho1/arquivo1] ...
  • 4. 4 Sistemas Operacionais Luiz Arthur onde: caminho/arquivo = Diretório/arquivo que será listado. caminho1/arquivo1 = Outro Diretório/arquivo que será listado. Assim, podem ser feitas várias listagens de uma só vez. Opções em negrito são importantes e as opções em negrito e Opções do comando ls sublinhadas são igualmente importantes e muito utilizadas. -a, --all Lista todos os arquivos (inclusive os ocultos) de um diretório. -A, --almost-all Lista todos os arquivos (inclusive os ocultos) de um diretório, exceto o diretório atual e o de nível anterior. -B, --ignore-backups Não lista arquivos que terminam com ~ (Backup). --color=PARAM Mostra os arquivos em cores diferentes, conforme o tipo de arquivo. PARAM pode ser: never - Nunca lista em cores (mesma coisa de não usar o parâmetro --color). always - Sempre lista em cores conforme o tipo de arquivo. auto - Somente colore a listagem se estiver em um terminal.
  • 5. 5 Sistemas Operacionais Luiz Arthur -d, --directory Lista os nomes dos diretórios ao invés do conteúdo. -f Não classifica a listagem. -F Insere um caracter após arquivos executáveis ('*'), diretórios ('/'), soquete ('='), link simbólico ('@') e pipe ('|'). Seu uso é útil para identificar de forma fácil tipos de arquivos nas listagens de diretórios. -G, --no-group Oculta a coluna de grupo do arquivo. -h, --human-readable Mostra o tamanho dos arquivos em Kbytes, Mbytes, Gbytes. -H Faz o mesmo que -h, mas usa unidades de 1000 ao invés de 1024 para especificar Kbytes, Mbytes, Gbytes. -l Usa o formato longo para listagem de arquivos. Lista as permissões, data de modificação, donos, grupos, etc. -n Usa a identificação de usuário e grupo numérica ao invés dos nomes. -L, --dereference Lista o arquivo original e não o link referente ao arquivo. -o Usa a listagem longa sem os donos dos arquivos (mesma coisa que -lG).
  • 6. 6 Sistemas Operacionais Luiz Arthur -p Mesma coisa que -F, mas não inclui o símbolo '*' em arquivos executáveis. Esta opção é típica de sistemas Linux. -R Lista diretórios e sub-diretórios recursivamente. --full-time Lista data e hora completa. Classificação da listagem A listagem pode ser classificada usando-se as seguintes opções: -f Não classifica, e usa -au para listar os arquivos. -r Inverte a ordem de classificação. -c Classifica pela data de alteração. -X Classifica pela extensão. -U Não classifica, lista os arquivos na ordem do diretório. Uma listagem feita com o comando ls -la normalmente é mostrada da seguinte maneira: -rwxr-xr-- 1 gleydson user 8192 nov 4 16:00 teste
  • 7. 7 Sistemas Operacionais Luiz Arthur As explicações de cada parte da saída do comando ls: -rwxr-xr-- São as permissões de acesso ao arquivo teste. A primeira letra (da esquerda) identifica o tipo do arquivo, se tiver um d é um diretório, se tiver um "-" é um arquivo normal. 1 Se for um diretório, mostra a quantidade de sub-diretórios existentes dentro dele. Caso for um arquivo, será 1. gleydson Nome do dono do arquivo teste. user Nome do grupo que o arquivo teste pertence. 8192 Tamanho do arquivo (em bytes). nov Mês da criação/ última modificação do arquivo. 4 Dia que o arquivo foi criado. 16:00 Hora em que o arquivo foi criado/modificado. Se o arquivo foi criado há mais de um ano, em seu lugar é mostrado o ano da criação do arquivo. teste Nome do arquivo.
  • 8. 8 Sistemas Operacionais Luiz Arthur Exemplos com as opções ls mais utilizadas: Para se ter uma listagem detalhada do diretório atual: $ ls -l total 0 drwx------ 2 aula users 176 2006-03-19 16:51 Desktop Uma listagem de todos os arquivos inclusive os ocultos: $ ls -a . .bash_history .dmrc .kde .local .mcoprc .screenrc .Xauthority .. Desktop .ICEauthority .kderc .mcop .qt .ssh .xsession-errors Listar os arquivos arquivos do diretório raiz por ordem de alteração: $ ls -c / tmp etc dev sys proc usr opt home boot root var bin sbin mnt lib Listar pela ordem da alteração inversa: $ ls -cr / lib mnt sbin bin var root boot home opt usr proc sys dev etc tmp ou $ ls -c -r / lib mnt sbin bin var root boot home opt usr proc sys dev etc tmp
  • 9. 9 Sistemas Operacionais Luiz Arthur O comando ls assim como a maioria dos comandos possui a opção --help, que normalmente exibe: sintaxe do comando, opções, parâmetros, dente outros. Exemplo, de uma saída resumida do ls com à opção --help: $ ls --help Uso: ls [OPÇÃO]... [ARQUIVO]... List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuSUX nor --sort. Argumentos obrigatórios para opções longas também o são para opções curtas -a, --all do not hide entries starting with . -A, --almost-all do not list implied . and .. --author print the author of each file . . . -X sort alphabetically by entry extension -1 list one file per line --help display this help and exit --version output version information and exit SIZE may be (or may be an integer optionally followed by) one of following: kB 1000, K 1024, MB 1000*1000, M 1024*1024, and so on for G, T, P, E, Z, Y. By default, color is not used to distinguish types of files. That is equivalent to using --color=none. Using the --color option without the optional WHEN argument is equivalent to using --color=always. With --color=auto, color codes are output only if standard output is connected to a terminal (tty). Comunicar `bugs' para <bug-coreutils@gnu.org>.
  • 10. 10 Sistemas Operacionais Luiz Arthur cd O comando cd é utilizado para entrar em um diretório. É preciso ter a permissão de execução para entrar em um diretório. cd [diretório] onde: diretório – é o nome/caminho do diretório que deseja-se entrar. Exemplos: Usando o comando cd sem parâmetros ou cd ~, você irá ao seu diretório de usuário (localizado no diretório /home). cd / retornará ao diretório raíz. cd - retornará ao diretório anteriormente acessado. cd .. sobe um diretório, ou seja, onde você esta um nível mais próximo do /. cd ../[diretório] sobe um diretório e entra imediatamente no próximo (por exemplo, quando você está em /usr/sbin, você digita cd ../bin, o comando cd retorna um diretório (/usr) e entra imediatamente no diretório bin (/usr/bin). cd /usr/doc entra no diretório /usr/doc. cd /tmp entra no diretório /tmp.
  • 11. 11 Sistemas Operacionais Luiz Arthur pwd O comando pwd mostra o nome e caminho do diretório atual, que o usuário se encontra. Você pode usar o comando pwd para verificar em qual diretório se encontra caso seu aviso de comandos (no prompt) não mostre isso. Exemplo: aula@darkstar$ pwd /usr/doc O comando pwd é muito útil para ajudar o usuário a se localizar quando este faz muitas entradas e saídas dos diretórios e subdiretórios com o comando cd. Um bom conselho é sempre passar como parâmetro a comandos o caminho inteiro onde se encontra o diretório no qual se deseja chegar e não ir entrando um por um. Exemplo, utilizar: $ cd /usr/doc ao invés de: $ cd /usr $ cd doc
  • 12. 12 Sistemas Operacionais Luiz Arthur mkdir O comando mkdir cria um diretório no sistema. Um diretório é usado para armazenar arquivos ou outros diretórios. O diretório pode ser entendido como uma pasta onde você guarda seus papeis (arquivos). Como uma pessoa organizada, você utilizará uma pastas para guardar cada tipo de documento, da mesma forma você pode criar um diretório vendas para guardar seus arquivos relacionados com vendas naquele local. mkdir [opções] [caminho/diretório] [caminho1/diretório1] onde: caminho É o caminho onde o diretório será criado. diretório É o nome do diretório que será criado. opções: --verbose Mostra uma mensagem para cada diretório criado. As mensagens de erro serão mostradas mesmo que esta opção não seja usada. Para criar um novo diretório, você deve ter permissão de gravação. Por exemplo, para criar um diretório em /tmp com o nome de teste que será usado para gravar arquivos de teste, você deve usar o comando "mkdir /tmp/teste". Podem ser criados mais de um diretório com um único comando (mkdir /tmp/teste /tmp/teste1 /tmp/teste2).
  • 13. 13 Sistemas Operacionais Luiz Arthur rmdir O rmdir remove um diretório do sistema. Este comando faz exatamente o contrário do mkdir. O diretório a ser removido deve estar vazio e você deve ter permissão de gravação para remove-lo. rmdir [caminho/diretório] [caminho1/diretório1] onde: caminho É o caminho do diretório que será removido. diretório Nome do diretório que será removido. Para remover um diretório é necessário que esteja-se um nível acima do diretório(s) que será(ão) removido(s). Para remover diretórios que contenham arquivos, use o comando rm com a opção -r. Por exemplo, para remover o diretório /tmp/teste você não deve estar no diretório /tmp/teste para executar o comando rmdir /tmp/teste. Atenção, este comando é muito perigoso, pois ele apaga os diretórios (e arquivos desse diretório com a opção -r), por isso sempre passe o caminho exato que será apagado para que não haja erros, lembrando que o usuário root pode apagar todo o sistema com o comando rmdir.
  • 14. 14 Sistemas Operacionais Luiz Arthur Os comandos de listagem e manipulação de diretórios devem ser estudados a fundo por todos que pretendem ser administradores de sistemas e é somente praticando que se adquire experiencia e propriedade para se trabalhar com diretórios. Atividade 1 1.1 Liste o diretório /root. 1.2 Liste mostrando todos os arquivos e atributos de forma detalhada do diretório /tmp. 1.3 Entre dentro do diretório /usr/doc e depois liste os arquivos apresentando o tamanho (de forma compreensível pelos humanos) dos diretórios e arquivos presentes neste diretório. 1.4 Crie dentro do diretório /tmp um diretório chamado atividade2. 1.5 Crie outro diretório chamado Atividade2 dentro do diretório /tmp, e depois crie um subdiretório chamado sub1 e outro chamado sub2 dentro do subdiretório Atividade2. 1.6 Apague o diretório /tmp/atividade2. 1.7 Apague o diretório /tmp/Atividade2 e todos os seus subdiretórios.
  • 15. 15 Sistemas Operacionais Luiz Arthur Comandos para manipulação de Arquivos Os arquivos são agrupamentos de bytes que podem ser do tipo texto ou binário. Assim como ocorre com os diretórios os arquivos são muito importantes para o sistema, desta forma, saber mante-los é muito importante para um administrador de sistema, a seguir serão mostrados alguns comando para a manipulação e gerenciamento de arquivos, alguns desses comando também se aplicam a diretórios que nada mais são do que arquivos um pouco diferentes. cat O comando cat mostra o conteúdo de um arquivo binário ou texto. cat [opções] [diretório/arquivo] [diretório1/arquivo1] diretório/arquivo Localização do arquivo que deseja visualizar o conteúdo. Opções: -n, --number Mostra o número das linhas enquanto o conteúdo do arquivo é mostrado. -s, --squeeze-blank Não mostra mais que uma linha em branco entre um parágrafo e outro.
  • 16. 16 Sistemas Operacionais Luiz Arthur O comando cat concatena arquivos, imprime seu conteúdo na tela e ainda pode receber texto digitado pelo teclado e enviar para um arquivo. Exemplos: Para criar um arquivo chamado teste.txt execute o comando: $ cat > teste.txt Olá Mundo Linux Agora você pode digitar qualquer texto. Quando terminar, pressione as teclas Crtl+d em uma linha vazia para finalizar a entrada de dados e salvar o arquivo teste.txt Para ver o conteúdo do arquivo teste.txt execute: $ cat teste.txt Olá Mundo Linux O cat também pode servir para concatenar arquivos. No comando abaixo o conteúdo de texto.txt é substítuido pelo texto1.txt. $ cat texto1.txt > texto.txt Para adicionar o conteúdo e texto1.txt no final do arquivo texto.txt o comando é: $ cat texto1.txt >> texto.txt
  • 17. 17 Sistemas Operacionais Luiz Arthur rm O comando rm apaga arquivos. Também pode ser usado para apagar diretórios e sub-diretórios vazios ou que contenham arquivos. rm [opções][caminho][arquivo/diretório] [caminho1][arquivo1/diretório1] onde: caminho Localização do arquivo que deseja-se apagar. Se omitido, assume que o arquivo esteja no diretório atual. arquivo/diretório Arquivo que será apagado. opções: -i, --interactive Pergunta antes de remover, esta é ativada por padrão. -v, --verbose Mostra os arquivos na medida que são removidos. -r, --recursive Usado para remover arquivos em sub-diretórios. Esta opção também pode ser usada para remover sub-diretórios. -f, --force Remove os arquivos fazer perguntas. -- arquivo Remove arquivos/diretórios que contém caracteres especiais. O separador "--" funciona com todos os comandos do shell e permite que os caracteres especiais como "*", "?", "-", etc. sejam interpretados como caracteres comuns.
  • 18. 18 Sistemas Operacionais Luiz Arthur Use com atenção o comando rm, uma vez que os arquivos e diretórios forem apagados, eles não poderão ser mais recuperados. Exemplos do uso do comando rm: rm teste.txt Apaga o arquivo teste.txt no diretório atual. rm *.txt Apaga todos os arquivos do diretório atual que terminam com .txt. rm *.txt teste.novo Apaga todos os arquivos do diretório atual que terminam com .txt e também o arquivo teste.novo. rm -rf /tmp/teste/* Apaga todos os arquivos e sub-diretórios do diretório /tmp/teste mas mantém o sub-diretório /tmp/teste. rm -rf /tmp/teste Apaga todos os arquivos e sub-diretórios do diretório /tmp/teste, inclusive /tmp/teste. rm -f -- --arquivo-- - Remove o arquivo de nome - -arquivo--.
  • 19. 19 Sistemas Operacionais Luiz Arthur cp O comando cp copia os arquivos para outros arquivos ou para diretórios. O comando cp pode copiar um arquivo ou múltiplos arquivos. cp [opções] [origem] [destino] onde: origem Arquivo que será copiado. Podem ser especificados mais de um arquivo para ser copiado usando "coringas" (veremos coringas a seguir). Destino O caminho ou nome de arquivo onde será copiado. Se o destino for um diretório, os arquivos de origem serão copiados para dentro do diretório. opções: i, --interactive Pergunta antes de substituir um arquivo existente. -f, --force Não pergunta, substitui todos os arquivos caso já exista. -r Copia arquivos dos diretórios e subdiretórios da origem para o destino. É recomendável usar -R ao invés de -r. -R, --recursive Copia arquivos e sub-diretórios (como a opção -r) e também os arquivos especiais e dispositivos.
  • 20. 20 Sistemas Operacionais Luiz Arthur -v, --verbose Mostra os arquivos enquanto estão sendo copiados. -s, --simbolic-link Cria link simbólico ao invés de copiar. -l, --link Faz o link no destino ao invés de copiar os arquivos. -p, --preserve Preserva atributos do arquivo, se for possível. -u, --update Copia somente se o arquivo de origem é mais novo que o arquivo de destino ou quando o arquivo de destino não existe. -x Não copia arquivos que estão localizados em um sistema de arquivos diferente de onde a cópia iniciou.
  • 21. 21 Sistemas Operacionais Luiz Arthur Então, o comando cp copia arquivos da ORIGEM para o DESTINO. Ambos origem e destino terão o mesmo conteúdo após a cópia. Exemplos: cp teste.txt teste1.txt Copia o arquivo teste.txt para teste1.txt. cp teste.txt /tmp Copia o arquivo teste.txt para dentro do diretório /tmp. cp * /tmp Copia todos os arquivos do diretório atual para /tmp. cp /bin/* . Copia todos os arquivos do diretório /bin para o diretório em que nos encontramos no momento. cp -R /bin /tmp Copia o diretório /bin e todos os arquivos/sub-diretórios existentes para o diretório /tmp. cp -R /bin/* /tmp Copia todos os arquivos do diretório /bin (exceto o diretório /bin) e todos os arquivos/sub-diretórios existentes dentro dele para /tmp. cp -R /bin /tmp Copia todos os arquivos e o diretório /bin para /tmp.
  • 22. 22 Sistemas Operacionais Luiz Arthur mv Move ou renomeia arquivos e diretórios. O processo é semelhante ao do comando cp mas o arquivo de origem é apagado após o término da cópia. mv [opções] [origem] [destino] onde: origem Arquivo/diretório de origem. destino Local onde será movido ou novo nome do arquivo/diretório. opções: -f, --force Substitui o arquivo de destino sem perguntar. -i, --interactive Pergunta antes de substituir. É o padrão. -v, --verbose Mostra os arquivos que estão sendo movidos. -u, --update Move somente arquivos antigos, ou novos arquivos.
  • 23. 23 Sistemas Operacionais Luiz Arthur Então, o comando mv copia um arquivo da ORIGEM para o DESTINO (semelhante ao cp), mas após a cópia, o arquivo de ORIGEM é apagado. Exemplos: mv teste.txt teste1.txt Muda o nome do arquivo teste.txt para teste1.txt. mv teste.txt /tmp Move o arquivo teste.txt para /tmp. Lembre-se que o arquivo de origem é apagado após ser movido. mv teste.txt teste.new (supondo que teste.new já exista) Copia o arquivo teste.txt por cima de teste.new e apaga teste.txt após terminar a copía.
  • 24. 24 Sistemas Operacionais Luiz Arthur Atividade 2 2.1 Crie um arquivo texto chamado atividade3.txt, e coloque o conteúdo: “Ola mundo cruel” 2.2 Crie um arquivo texto chamado Atividade3.1.txt, e coloque o conteúdo: “OLA MUNDO CRUEL”. 2.3 Visualize o conteúdo dos arquivos atividade3.txt e Atividade3.1.txt. 2.4 Crie um arquivo chamado chamado linux.txt, e coloque o conteúdo: “do Linux”. 2.5 Substitua o conteúdo do arquivo linux.txt ao arquivo atividade3.txt e visualize os arquivos. 2.6 Acrescente o conteúdo do arquivo linux.txt ao arquivo Atividade3.1.txt e visualize os arquivos. 2.7 Crie um diretório chamado aula3 e copie o arquivo atividade3.txt para este diretório. 2.8 Mova o arquivo Atividade3.1.txt para o diretório aula3. 2.9 Copie o conteúdo do diretório aula3 para o diretório /tmp 2.10 Mova todos os arquivos txt e o diretório aula3 bem como seu conteúdo para o diretório /tmp/atividade3/
  • 25. 25 Sistemas Operacionais Luiz Arthur Coringas Coringas (ou referência global) é um recurso usado para especificar um ou mais arquivos ou diretórios do sistema de uma só vez. Este é um recurso permite que você faça a filtragem do que será listado, copiado, apagado, etc. São usados 4 tipos de coringas no GNU/Linux: "*" - Faz referência a um nome completo/restante de um arquivo/diretório. "?" - Faz referência a uma letra naquela posição. [padrão] - Faz referência a uma faixa de caracteres de um arquivo/diretório. Padrão pode ser: [a-z][0-9] - Faz referência a caracteres de a até z seguido de um caracter de 0 até 9. [a,z][1,0] - Faz a referência aos caracteres a e z seguido de um caracter 1 ou 0 naquela posição. [a-z,1,0] - Faz referência a intervalo de caracteres de a até z ou 1 ou 0 naquela posição.
  • 26. 26 Sistemas Operacionais Luiz Arthur A procura de caracteres é "case sensitive" assim se você deseja que sejam localizados todos os caracteres alfabéticos você deve usar [a-zA-Z]. Caso a expressão seja precedida por um ^, faz referência a qualquer caracter exceto o da expressão. Por exemplo [^abc] faz referência a qualquer caracter exceto a, b e c. Vamos dizer que tenha 5 arquivo no diretório /usr/teste: teste1.txt, teste2.txt, teste3.txt, teste4.new, teste5.new. Caso deseje listar todos os arquivos do diretório /usr/teste você pode usar o coringa "*" para especificar todos os arquivos do diretório: $ cd /usr/teste e ls * ou ls /usr/teste/* Agora para listar todos os arquivos teste1.txt, teste2.txt, teste3.txt exceto teste4.new, teste5.new, podemos usar inicialmente 3 métodos: Usando o comando ls *.txt que pega todos os arquivos que começam com qualquer nome e terminam com .txt. Usando o comando ls teste?.txt, que pega todos os arquivos que começam com o nome teste, tenham qualquer caracter no lugar do coringa ? e terminem com .txt.
  • 27. 27 Sistemas Operacionais Luiz Arthur Com o exemplo acima teste*.txt também faria a mesma coisa, mas se também tivéssemos um arquivo chamado teste10.txt este também seria listado. Usando o comando ls teste[1-3].txt, que pega todos os arquivos que começam com o nome teste, tenham qualquer caracter entre o número 1-3 no lugar da 6a letra e terminem com .txt. Neste caso se obtém uma filtragem mais exata, pois o coringa ? especifica qualquer caracter naquela posição e [] especifica números, letras ou intervalo que será usado. Agora para listar somente teste4.new e teste5.new podemos usar os seguintes métodos: ls *.new que lista todos os arquivos que terminam com .new ls teste?.new que lista todos os arquivos que começam com teste, contenham qualquer caracter na posição do coringa ? e terminem com .new. ls teste[4,5].* que lista todos os arquivos que começam com teste contenham números de 4 e 5 naquela posição e terminem com qualquer extensão.
  • 28. 28 Sistemas Operacionais Luiz Arthur