shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Listando maiores arquivos do disco.


From: Bruno Gunter
Subject: Re: [shell-script] Listando maiores arquivos do disco.
Date: Fri, 12 Mar 2010 22:53:52 -0300

Nilson,

Que tal voce filtrar usando o --max-depth ao invés do $(ls)?
Creio que sua vida ficaria bem mais fácil... Além de retornar arquivos
ocultos sem o teu ls que pode estourar, e aí teríamos que ir prum exec ou
xargs.

Observe a facilidade (no meu home, para facilitar a visualizacao):

$ time du -ach --max-depth=1 .
16K ./.bash_history
4.0K ./.mysql_history
8.0K ./.ssh
320K ./db_mysql.sql
16K ./doms.txt
16K ./doms2.txt
4.0K ./a
496M ./corp.tar.bz2
496M .
496M total

real 0m0.002s
user 0m0.000s
sys 0m0.000s


Agora sua versao:

time du -s $(ls -A) | sort -rn |head -10
507512 corp.tar.bz2
320 db_mysql.sql
16 doms2.txt
16 doms.txt
16 .bash_history
8 .ssh/
4 a
4 .mysql_history

real 0m0.007s
user 0m0.000s
sys 0m0.010s


[]'s
Gunter


Em 9 de março de 2010 16:10, Nilson Rocha <address@hidden>escreveu:

> Colaboração: Domingos Antonio Pereira Creado
>
> Quando um volume enche a situação normalmente pega fogo. Se for servidor
> ainda
> de arquivos então... E a situação é complicada pois não tem outro jeito se
> não ser a liberação de espaço, ou removendo arquivos ou movendo para outros
> volumes. E para ser rápida a operação tem que atacar logo quem está
> ocupando
>
> grandes partes do volume. Costumo normalmente utilizar o seguinte comando:
>
>
>  du -s * | sort -rn | head -10
>
>
> O "du -s *" cria uma lista com os tamanhos e nomes dos objetos no diretório
> corrente - no caso de diretórios o tamanho dos objetos dentro dele serão
> somados (parametro "-s") , o "sort -rn" pega a lista gerada pelo du e
> ordena
> a primeira coluna na forma numérica (o "-n") e de forma inversa (o
> parametro
>
> "-r") e o "head -10" mostra somente as 10 primeiras linhas.
>
> Assim serão retornados os 10 maiores vilões da ocupação do volume.
>
> Pode-se incrementar um pouco mais trocando a simples expansão "*" por uma
> mais seletiva, como por exemplo "/home/d*" para saber qual das contas de
> usuários que iniciam com "d" estão ocupando mais espaço, ou ainda
> "/home/d*/*"
> para saber quais os diretórios das contas dos usuários "d*" estão ocupando
> maior espaço.
>
> Se você vai procurar quem está ocupando mais espaço em sua conta, lembre-se
> que as expansões acima não incluem os objetos "escondidos" (ou iniciados
> com
> "."), até dá para utilizar a expansão ".*" mas ela inclui também o ".." o
> que não é uma boa.
>
> Assim se você vai caçar comedores de disco em uma conta, talvez seja melhor
> utilizar a construção
>
>
>  du -s `ls -A` | sort -rn | head -10
>
>
> Nessa linha de trocar a expansão por uma lista, o céu torna-se o limite
> (quer dizer a quantidade de memória)
>
> Em 9 de março de 2010 16:07, George Robinson
> <address@hidden>escreveu:
>
> >
> >
> > Prezados,
> >
> > Estou com um problema no meu servidor de e-mails, no qual o mesmo nao
> envia
> > nem recebe mais msgs. Creio que o problema seja o meu disco com 100% de
> > uso.
> > Por isto, venho até o grupo perguntar se existe alguma forma de separar /
> > listar / pesquisar arquivos de modo que a saída retorne arquivos >= 100
> mb
> > em minha partiçoes, ou qualquer outra forma de listar / classificar os
> > arquivos nas em /var, /home, /root...
> >
> > Muito obrigado a todos
> > --
> > George Robinson
> > Analista de Suporte
> > Tel: (21) 8843-7251 / (21) 8140-2351
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
>
>
> --
> Atenciosamente;
>
> Nilson Rocha
> Linux User #456395
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
>
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]