Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Aprenda inglês de uma vez por todas

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Remoção de arquivos com nomes estranhos

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 18 de Maio de 1997

Uma complementação bastante interessante sobre a dica veiculada no dia 5 de maio me foi enviada pelo Alexandre Niero, do Instituto de Computação da Unicamp. Aí vai:


Na dica veiculada em 02/05/97, sobre a remoção de arquivos, acredito ser importante acrescentar a dica de como remover os arquivos que contém caracteres especiais, caracteres de controle de shell, caracteres tipo wildcards, arquivos contendo o caracter espaço, e caracteres não digitáveis.

É importante que o administrador (principalmente Unix) saiba como removê-los.

Os conceitos também podem ser aplicados na movimentação e cópia dos arquivos.

1- Caracteres Especiais:

São exemplos de caracteres especiais e de controle de shell: (, ), #, $, &

Exemplos de nomes de arquivos:

  #abc
  (rre
  )letter
  $sh
  &tt

Para remover os arquivos iniciados com os caracteres acima utilizar:

  rm ./<arquivo>

ou

  rm "<arquivo>"

ou ainda

  rm '<arquivo>'

exemplos:

  rm ./#abc
  rm "(rre"
  rm "&a"
  rm '$sh'

2- Arquivos com nomes de caracteres tipo wildcard:

Exemplo de wildcard: *

exemplo de nomes de arquivo com wildcards:

  a*
  *a
  *a*

Estes caracteres podem causar um enorme "dano", removendo coisas inesperadas. Veja o exemplo:

  user@host% ls -al
  total 3
  -rw-r--r--   1 user    group          0 May  7 19:32 *ab*
  drwxr-xr-x   2 user    group        512 May  7 19:32 ./
  drwxr-x--x   7 user    group       2048 May  7 18:38 ../
  -rw-r--r--   1 user    group          0 May  7 19:32 abg
  -rw-r--r--   1 user    group          0 May  7 19:32 dab
  -rw-r--r--   1 user    group          0 May  7 19:32 dabg
  user@host% rm *ab*
  user@host% ls -al
  total 3
  drwxr-xr-x   2 user    group        512 May  7 19:33 ./
  drwxr-x--x   7 user    group       2048 May  7 18:38 ../

O comando rm *ab* acima removeu TODOS os arquivos do diretorio!!!

Uma forma segura é utilizar o nome do arquivo desejado entre aspas duplas ou simples:

  rm "*ab*"
  rm '*ab*'

exemplo:

  user@host% ls -al
  total 3
  -rw-r--r--   1 user    group          0 May  7 19:32 *ab*
  drwxr-xr-x   2 user    group        512 May  7 19:32 ./
  drwxr-x--x   7 user    group       2048 May  7 18:38 ../
  -rw-r--r--   1 user    group          0 May  7 19:32 abg
  -rw-r--r--   1 user    group          0 May  7 19:32 dab
  -rw-r--r--   1 user    group          0 May  7 19:32 dabg
  user@host% rm *ab*
  user@host% ls -al
  total 3
  drwxr-xr-x   2 user    group        512 May  7 19:32 ./
  drwxr-x--x   7 user    group       2048 May  7 18:38 ../
  -rw-r--r--   1 user    group          0 May  7 19:32 abg
  -rw-r--r--   1 user    group          0 May  7 19:32 dab
  -rw-r--r--   1 user    group          0 May  7 19:32 dabg

Assim, apenas o arquivo *ab* foi removido, conforme seria desejável

3- Arquivos com caracter espaço:

São arquivos que foram criados com caracteres de espaço no nome. Este caracter pode estar no inicio ou no meio do nome do arquivo. Exemplos:

  user@host% ls -al
  total 3
  -rw-r--r--   1 user    group          0 May  7 19:45  a b c
  drwxr-xr-x   2 user    group        512 May  7 19:45 ./
  drwxr-x--x   7 user    group       2048 May  7 18:38 ../
  -rw-r--r--   1 user    group          0 May  7 19:42 a b c
  user@host% rm a b c 
  rm: a: No such file or directory
  rm: b: No such file or directory
  rm: c: No such file or directory

estes arquivos podem ser removidos utilizando-se o nome entre aspas duplas ou simples:

  user@host% rm "a b c" ' a b c'
  user@host% ls -al
  total 3
  drwxr-xr-x   2 user    group        512 May  7 19:45 ./
  drwxr-x--x   7 user    group       2048 May  7 18:38 ../

4- Caracteres não digitáveis:

Exemplos são arquivos com caracteres de controle, caracteres especiais de outros Sistemas operacionais ou contendo acentos que não possam ser reproduzidos na console atual.

Estes arquivos apenas podem ser removidos utilizando-se a opção de remoção interativa, ou rm -i. Neste caso deve ser digitado um y ou Y para confirmar quais arquivos devem ser excluidos.

A opção interativa é bastante segura, e pode ser utilizada para remover também os arquivos citados nos tópicos anteriores.

Exemplo:

  user@host% ls -al
  total 3
  -rw-r--r--   1 user    group          0 May  7 19:45  a b c
  -rw-r--r--   1 user    group          0 May  7 19:45 *ab* 
  drwxr-xr-x   2 user    group        512 May  7 19:45 ./
  drwxr-x--x   7 user    group       2048 May  7 18:38 ../
  -rw-r--r--   1 user    group          0 May  7 19:42 a b c
  -rw-r--r--   1 user    group          0 May  7 19:32 abg
  -rw-r--r--   1 user    group          0 May  7 19:32 dab
  -rw-r--r--   1 user    group          0 May  7 19:32 dabg
  user@host% rm -i *
  rm: remove ` a b c'? y
  rm: remove `*ab*'? y
  rm: remove `a b c'? n
  rm: remove `abg'? y
  rm: remove `dab'? y
  rm: remove `dabg'? y
  user@host% ls -al
  total 3
  drwxr-xr-x   2 user    group        512 May  7 19:45 ./
  drwxr-x--x   7 user    group       2048 May  7 18:38 ../
  -rw-r--r--   1 user    group          0 May  7 19:42 a b c

— Alexandre Niero<BR> <niero (a) dcc unicamp br><BR> Instituto de Computacao - Unicamp<BR>


Pensamento do Dia

"O salário de um jogador de basquete nao tá dando nem pra cesta básica."

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.88/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 2.9 /5 (1443 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script

Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

As Palavras Mais Comuns da Língua Inglesa (2ª edição)