Basta fornecer uma lista de tudo que você deseja contar usando --files0-from
find -type f -print0 | du --files0-from=-
Como calcular o uso de disco de uma árvore de arquivos, mas excluindo diretórios.
Eu gostaria de ter algo como:
du --exclude type d
Eu uso o rsync para espelhar / fazer backup de parte do diretório home e quero verificar o tamanho total após o backup, mas por algum motivo um diretório tem tamanhos diferentes na origem e no destino, a saber: 12288 B e 16384 B. diretórios tem 4096 B.
Tanto a origem quanto o destino são ext4.
Se você tiver o GNU find, poderá imprimir os tamanhos dos arquivos.
find /source ! -type d -printf '%P %s\n'
Classifique a saída para obter uma saída determinística. Se os nomes dos arquivos contiverem novas linhas, é possível obter a mesma saída classificada para diferentes arranjos, mas isso não acontecerá a menos que seja deliberadamente projetado.
comm -3 <(find /source ! -type d -printf '%P %s\n') <(find /destination ! -type d -printf '%P %s\n')
Duas respostas sugeridas são específicas para o Linux. Aqui está uma sugestão, aderindo ao POSIX:
#!/bin/sh
find "$@" -type f |\
xargs du -s |\
awk 'BEGIN {total = 0;} { total += $1; } END { print total; }'
Alternativamente, você poderia tentar contornar espaços em nomes de caminho (ainda POSIX):
#!/bin/sh
find "$@" -type f -exec du -s {} + |\
awk 'BEGIN {total = 0;} { total += $1; } END { print total; }'
A propósito, o OP pediu tamanho total ; Por alguma razão, outras respostas tentam fornecer um detalhamento de tamanhos por arquivo.
Leitura adicional:
Acredito que o que você está procurando é --max-depth
.
Então, por exemplo. Se você quisesse calcular o uso do disco de um diretório sem todos os seus subdiretórios, é assim que seria feito.
du [directory name] --max-depth=1
Se você quiser encontrar o tamanho de seus subdiretórios, basta aumentar a profundidade.
Eu encontrei um link que dá muita informação sobre como usar du
se isso não ajudar você pode conferir este site sobre du . Que fornece uma boa quantidade de informações sobre du
.
Tags backup disk-usage rsync