Solução
Ao fornecer a opção -c
(ou --total
) para du(1)
, você pode instruí-la para produzir um total geral. Se sua implementação de du(1)
suportar uma dessas opções, você poderá obter o efeito desejado usando o seguinte comando:
$ find . -name 'flibble*' -ctime +90 -exec du -shc {} +
Explicação
A diferença entre a semântica de -exec command {} \;
e -exec command {} +
é a seguinte:
-
command {} \;
executacommand
uma vez para cada resultado defind
. O nome do caminho do resultado é passado em vez de{}
.$ touch 1 2 3 $ find 1 2 3 -maxdepth 0 -exec echo {} \; 1 2 3
-
command {} +
executacommand
, quando todos os resultados foram recuperados. Os nomes dos caminhos dos resultados são passados em vez de{}
.$ touch 1 2 3 $ find 1 2 3 -maxdepth 0 -exec echo {} + 1 2 3
Para saber mais sobre as opções de du(1)
e find(1)
, você deve consultar os respectivos manpages.