Isso é simples:
find ~/ -mtime -3 -exec cat {} + | wc -c
Os envios acima contam cada caractere em cada arquivo com wc
, o que os conta.
Se os arquivos são grandes, o acima envolveria muita leitura do disco. Se seria muito mais eficiente simplesmente adicionar os tamanhos dos arquivos. Os métodos para obter o tamanho de um arquivo variam entre as versões do Unix. Se o seu sistema suportar um comando stat
no estilo linux, o seguinte comando funcionará:
find . -mtime -3 -type f -exec stat -c%s {} + | awk '{total+=$1} END{print total}'
Acima, stat -c%s
retorna o tamanho de cada arquivo e awk
os adiciona e informa sobre o total. Isso elimina a necessidade de ler completamente cada arquivo.