The UNIX and Linux Forums  

Go Back   O UNIX e Linux Forum > Top Fóruns > Programação Shell Script e
.
google unix.com



Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui.

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
awk - Contando número de linhas semelhantes dhanamurthy Programação Shell Script e 8 05-16-2008 07:00
Contando número de ocorrências kingofprussia UNIX para Dummies Perguntas & Respostas 1 04-01-2008 08:11
Preciso de ajuda para contagem dos campos e separadores de campos usando Nawk scrappycc Programação Shell Script e 3 02-06-2008 11:47
Contando número de arquivos em um diretório iamalex UNIX para Dummies Perguntas & Respostas 2 09-05-2005 11:13
contando o número de linhas nayeemmz Linux 6 01-19-2005 12:37

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 10-13-2008
Pablo_beezo Pablo_beezo is offline
Usuário
  
 

Join Date: Apr 2008
Lugares: 85
Ajuda na contagem número de bytes em um campo

Oi,

Eu tenho um arquivo que tem uma carga com 300 registros de domínios. dois deles são:

field_1 tem entre 8-9 bytes ou seja, 012345678, 0123456789
field_2 tem 10 bytes ou seja 01234567890

Quero ser capaz de fazer eco com o total de cada um desses campos ou seja,

200 (tem 8 .-9. bytes)
100 (com 10 bytes)

não sei como fazer isso, tenho tentado wc-l:

RR \u003d "wc-l cliente diretório / arquivo in.dat"

o arquivo em. dat tem um espaço no nome do arquivo? não tenho certeza se ele faz a diferença?

Eu não posso chegar a este trabalho?
qualquer ajuda seria appreceiated.
  #2 (permalink)  
Old 10-13-2008
jim McNAMARA jim mcnamara is online now Forum Staff  
...@...
  
 

Join Date: Feb 2004
Localização: NM
Mensagens: 5.807

Código:
awk '{ arr[length($1)]++; arr[length($2)]++; }
       END {print "8 - 9 bytes", arr[8]+arr[9], " 10 bytes ", arr[10] } ' file

  #3 (permalink)  
Old 10-14-2008
Pablo_beezo Pablo_beezo is offline
Usuário
  
 

Join Date: Apr 2008
Lugares: 85
Question

Não usar awk a todos os não tão certo como se escreve isso??

Preciso de duas variáveis que na saída 8 -9 byte total e 10 bytes total ou seja,

8-9 \u003d awk '(arr [length ($ 1)] + +)
END (print "8 .-9. bytes", arr [8] + arr [9]) 'caminho para o arquivo?
10 \u003d awk '(arr [comprimento ($ 2 )]++;)
END (print "10 bytes", arr [10]) 'caminho para o arquivo?


É desta forma que você usa a solução de Jim?
  #4 (permalink)  
Old 10-14-2008
tayyabq8's Avatar
tayyabq8 tayyabq8 is offline Forum Advisor  
Moderador
  
 

Join Date: Nov 2004
Localização: Bahrain
Lugares: 579
Ele usa arrays associativos, a compreender como arrays associativos trabalham em awk, consulte este post Incapaz de compreender natureza associativa do awk arrays

Sobre esta executando awk script, você tem que usá-lo da mesma forma que ele codificadas, como por suas suas necessidades, se você não sabe como executá-la na linha de comando e, em seguida, colocá-la em algum script de shell e execute o arquivo. Algo parecido com isto:
Código:
#! /bin/ksh
awk '{ arr[length($1)]++; arr[length($2)]++; }
       END {print "8 - 9 bytes", arr[8]+arr[9], " 10 bytes ", arr[10] } ' file

Salve este script de shell como "teste", em seguida, faça o seguinte:
Código:
chmod +x test
./test

Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 05:20.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0