você está aqui: Home  → Arquivo de Mensagens

Mais usos do comando find

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 02 de Setembro de 2003

Em sistemas *nix, uma ferramenta de enorme funcionalidade é o comando find.

O comando find aceita diversas diretivas que lhe instruem sobre o que pesquisar em um sistema de arquivos. Arquivos maiores que um tamanho pré-determinado, que tenham sido modificados ou acessados até determinada data, etc.

Vamos então ver uma forma pouco usada, mas que pode ter sua utilidade.

Eu criei em um diretório um arquivo estranho. Deu um trabalho para criar o arquivo, pois ele continha uma marca de tabulação em seu nome.

  $ ls
  a  ?a  b  c  d  e
  $ ls | cat -v
  a
          a
  b
  c
  d
  e

Bom, agora eu quero remover este arquivo. Existem várias maneiras de se fazer isto, mas eu quero demonstrar uma que use o recurso do comando find que eu quero demonstrar. Quem sabe um dia alguém ache um exemplo mais inteligente :-)

  $ ls -i
  3358935 a  3358929 ?a  3358930 b  3358931 c  3358932 d  3358933 e

O comando ls irá exibir os i-nodes (index nodes) dos arquivos que são informações. i-nodes são estruturas de dados que indicam ao sistema operacional a localização física dos arquivos.

De posse desta informação, eu posso fazer:

  find . -inum 3358929 -ok rm '{}' \; 

O parâmetro "-ok" é uma verificação de segurança para garantir que nada saia errado. Ele vai buscar o arquivo cujo i-node seja igual a 3358929 e removê-lo.

Caso eu tenha certeza absoluta do que estou fazendo uma alternativa é usar a diretiva "-exec", que executa o comando diretamente:

  find . -inum 3358929 -exec rm '{}' \; 

A Dicas-L já publicou mais algumas dicas sobre o comando find. Veja também:



 

 

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

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