Como posso produzir tamanho de arquivo em bytes e MB?

0

Posso pensar em algumas maneiras diferentes de obter o tamanho do arquivo em bytes OU em MB.

    du -h ubuntu-mini-remix-16.04-amd64.iso
    296M    ubuntu-mini-remix-16.04-amd64.iso
    stat --printf='%s %n \n' ubuntu-mini-remix-16.04-amd64.iso
    309329920 ubuntu-mini-remix-16.04-amd64.iso 
    find -maxdepth 1 -name "ubuntu-mini-remix-16.04-amd64.iso" -printf "%s %P\n"
    309329920 ubuntu-mini-remix-16.04-amd64.iso
    ls -lh ubuntu-mini-remix-16.04-amd64.iso
    -rw-rw-r-- 1 me me 295M May  3 00:35 ubuntu-mini-remix-16.04-amd64.iso
    ls -l ubuntu-mini-remix-16.04-amd64.iso
    -rw-rw-r-- 1 me me 309329920 May  3 00:35 ubuntu-mini-remix-16.04-amd64.iso

Como obtenho os dois em uma linha? ou seja,

296M    309329920    ubuntu-mini-remix-16.04-amd64.iso
    
por opticyclic 05.05.2018 / 03:40

1 resposta

1

Tente isto:

stat -c "%s %s %n" ubuntu-mini-remix-16.04-amd64.iso | awk '{ byte =$1 /1024/1024; print byte "M\t"$2"\t"$3 }'

awk calculará o tamanho do arquivo em MB pelo tamanho do arquivo dividido com /1024/1024 e exibirá todos.

    
por 05.05.2018 / 03:53

Tags