shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Re: [ expr ] - Saída do AWK


From: Gustavo Filgueiras
Subject: Re: [shell-script] Re: [ expr ] - Saída do AWK
Date: Fri, 12 Sep 2014 10:16:22 -0300

Caros,


    Muito obrigado por todas as respostas e soluções, minha dúvida foi solucionada.
    Porém pesquisando mais, estou com outra dúvida.

    Gostaria de extrair o tamanho em GB, mas levando em conta o arquivo de 100MB, se eu der um ls -l --block-size=G |grep arquivo.img, vai me retornar 1GB.
     ls -l --block-size=G |grep arquivo.img
     -rw-r--r-- 1 root root 1G Sep 11 15:16 arquivo.img

     Mas gostaria que me retorna-se mais preciso, de verdade ele deveria retornar ( 0.09765625 ) mas se possivel cortar em 2 casas decimais. Procurei algo, mas nada funcionou bem, tentei usando printf mas sem sucesso.

     0.09 GB

Em 12 de setembro de 2014 02:11, Fernando Mercês address@hidden [shell-script] <address@hidden> escreveu:
 

Ok, última mensagem sobre... Mas acho que vale a pena ver opções diferentes pra mesma coisa:

$ stat -c %s*8 mail.php | bc
2272

Agora sim, fui. o/




Att,

Fernando Mercês
Linux Registered User #432779
www.mentebinaria.com.br
------------------------------------
"Ninguém pode ser escravo de sua identidade; quando surge uma possibilidade de mudança é preciso mudar". (Elliot Gould)

2014-09-12 2:01 GMT-03:00 Fernando Mercês <address@hidden>:

De novo, sei que já resolveu o problema, mas se precisar de desempenho pra isso (for fazer com muitos arquivos), fiz uma implementaçãozinha rápida em ANSI C, assim você não depende do bash, bc, nem mesmo do Linux. Imitei a saída do wc. ;-)

$ gcc -o bits bits.c

$ ./bits mail.php .ssh/config .htcfg2
2272 mail.php
20376 .ssh/config
14064 .htcfg2
36712 total

$ ./bits mail.php
2272 mail.php

Aí se for o caso você altera como quiser, pra não imprimir o nome do arquivo, ou não imprimir o total.. Enfim, tu que sabe. :)
Mesmo que não use, já me diverti. Sem erro. hehe

Abraço!



Att,

Fernando Mercês
Linux Registered User #432779
www.mentebinaria.com.br
------------------------------------
"Ninguém pode ser escravo de sua identidade; quando surge uma possibilidade de mudança é preciso mudar". (Elliot Gould)

2014-09-12 1:09 GMT-03:00 Fernando Mercês <address@hidden>:

Opa, sei que já foi respondido, mas se você já sabe o nome do arquivo, por que usar ls | grep? Eu faria direto, e talvez com o wc ao invés do ls ;-)

Com aritimética do bash:
$ echo $(($(wc -c < mail.php) * 8))
2272

Com aritimética do bc:
$ echo "$(wc -c < mail.php) * 8" | bc
2272

Abraço!



Att,

Fernando Mercês
Linux Registered User #432779
www.mentebinaria.com.br
------------------------------------
"Ninguém pode ser escravo de sua identidade; quando surge uma possibilidade de mudança é preciso mudar". (Elliot Gould)

2014-09-11 16:55 GMT-03:00 address@hidden [shell-script] <address@hidden>:

 

Claro que a conversao no caso foi base 2 mas pode ser base=8 ou base=16 etc..
Abracp






reply via email to

[Prev in Thread] Current Thread [Next in Thread]