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 <[email protected]>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 > <[email protected]>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: [email protected] > --------------------------------------------------------------------- > 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]
