Faça algo assim:
find data -iname '*.txt' |xargs stat -c '%s' |awk '{total=total+$1}END{mbtotal = total / 1000000 ; print mbtotal}'
Basicamente, obtenha sua lista de arquivos usando find
, obtenha o tamanho de cada hit usando stat
(formatando a saída para exibir o tamanho) e, em seguida, use awk
(no meu exemplo , dividindo por 1.000.000 para obter algo como megabytes; mude o denominador a seu critério).
Você também pode fazer um exercício semelhante em Perl ou qualquer idioma que deseje usar.