A maneira mais rápida de obter uma lista de todos os tamanhos de arquivo

3

Estou tentando criar um gráfico da distribuição de tamanhos de arquivo no meu sistema ext4. Eu estou tentando escrever um script para raspar esta informação do meu computador de alguma forma. Eu não me importo onde os arquivos são armazenados na estrutura do diretório, apenas quanto espaço cada um ocupa. Eu sei que os tamanhos dos arquivos são armazenados nos metadados do inode, e parece que pode ser muito rápido ler a tabela do inode, se tal coisa existir. Alguém sabe de uma API C para acessar o tamanho dos arquivos ou ler diretamente da tabela de inode? Alguém sabe onde a tabela de inodes é armazenada?

    
por Cypress Frankenfeld 13.10.2012 / 21:53

2 respostas

2

Se você quer uma API C, você vai acabar com o GNU nftw , o caminho da árvore de arquivos GNU. NÃO se engane usando o antigo ftw , você obterá dados imprecisos. Você precisará escrever uma função "por arquivo" que use o struct stat que nftw passa para a função "por arquivo". Você pode fazer com que a função "por arquivo" coloque tamanhos de arquivo em intervalos, ou apenas imprima o tamanho do arquivo e, em seguida, coloque os números nos baldes de outra maneira.

    
por 13.10.2012 / 23:47
0

Você tentou baobab ou filelight ?

    
por 13.10.2012 / 21:59