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

 

Curso de Inglês Online

Assine a Lista Dicas-L

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

Localização de Arquivos Grandes

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 24 de Novembro de 2000

Com relação a mensagem sobre os arquivos grandes, eu recebi algumas idéias interessantes, que estou retransmitindo.

Como diz o Larry Wall, criador do Perl, "there is more than one way of doing it".

A primeira delas me foi enviada pelo Fernando Roxo, da Conectiva <<roxo (a) conectiva com br>>. Leiam com atenção pois ele aborda alguns conceitos muito interessantes e certamente bastante úteis que podem ser usados em outros contextos.


  > ---------------------------------------------------------------------
  > Se o espaço em disco anda apertado em seu sistema Unix, para
  > descobrir os culpados os seguintes comandos podem ajudar:
  > 
  > find . -size +1024 | xargs ls -s | sort -nr | head -n 20 

Uma pequena modificação poderia ser :

    find . -size +1024 -exec ls -s {} \; | sort -nr | head -n 20

Esta forma usa a possibilidade do 'find' executar um comando a cada arquivo encontrado, neste caso o comando 'ls -s'. Alguém poderia questionar o fato de se estar invocando o comando 'ls' a cada novo arquivo encontrado, em lugar de um único evento como na sugestão apresentada. Neste caso estou me aproveitando do fato de o Linux/ Unixes fazerem um cache dos códigos recentemente executados, por isto depois da primeira invocação do 'ls' o sistema apenas executará a cópia que já está na memória, sem perdas maiores.

No caso do 'GNU find', presente no Linux e nos Free*nixes, pode-se ainda usar uma outra opção :

      find . -size +1024 -printf "%k %h/%f\n" | sort -nr | head -20

A opção "-printf" é bastante poderosa e flexível, para maiores informações "man find". Neste caso específico o símbolo "%k" será substituido pelo tamanho do arquivo em blocos de 1024 bytes ( K Bytes ). O símbolo "%h" corresponde ao 'dirname' ( ver "man dirname" ) do arquivo, e o símbolo "%f" ao 'basename' ( ver "man basename" ;)). Para efeito de formatação pode-se usar a forma :

      find . -size +1024 -printf "%8k %h/%f\n" | sort -nr | head -20

Que força um campo de 8 caracteres para o tamanho do arquivo.

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.97/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1304 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)