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

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

Re: [shell-script] Awk x Cut


From: Tiago Peczenyj
Subject: Re: [shell-script] Awk x Cut
Date: Fri, 27 Jul 2012 09:25:25 -0300

Ola

o awk tem uma vantagem que é vc ter campos separados por um ou mais
caracteres separadores, por exemplo:

prompt $ cat xxx
a b
a  c
a   d
prompt$ cut -d' ' -f2  xxx
b


prompt$ awk '{print $2}' xxx
b
c
d

no caso do cut ele é exato: vai trazer o segundo campo separado por UM
caracter espaço. em tese ele deveria ser mais rapido que o awk por ter
menos overhead (afinal vc só quer imprimir uma parte do stream de dados,
não quer lidar com arrays, funções, loops, expressões regulares, etc) MAS a
diferença é irisória para arquivos pequenos. Para arquivos maiores talvez
nem awk nem cut resolvam.

Agora é muito comum vc ter uma expressão grande envolvendo cut, grep, etc,
e varios pipes, que poderiam ser feitos com um unico awk. nesses casos a
vantagem é vc ter menos processos e menos overhead de sincronizar I/O entre
os processos se tudo estiver dentro do mesmo awk, por exemplo.

2012/7/27 Petterson Faria <address@hidden>

> **
>
>
> Bom nunca fiz nenhum teste profundo comparando os dois recursos.
> Existe uma diferença grande de desempenho entre os dois?
>
> $ time du -sh ~/Downloads/|cut -f1
> real 0m0.118s
> user 0m0.028s
> sys 0m0.088s
>
> $ time du -sh ~/Downloads/|awk '{print $1}'
> real 0m0.120s
> user 0m0.016s
> sys 0m0.104s
>
> Pensei no tempo de processamento ser afetado pelo cache do processador,
> então melhor perguntar à quem já teve alguma experiência com isso.
>
> --
> Atenciosamente,
> *Petterson Faria*
>
> *"*Where there is a shell there is a way" (UNIX)
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Tiago B. Peczenyj
Linux User #405772

http://pacman.blog.br


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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