The UNIX and Linux Forums  
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.

Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

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 Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 07-17-2008
jkl_jkl jkl_jkl is offline
Registreret Bruger
  
 

Join Date: Aug 2007
Stillinger: 46
awk hjælpe

Hej alle,

Code:
Input file: file.txt
_____________________

7789 0
3445 1
7789 1
1223 0
4567 0
7789 0
7789 0
1212 1
3445 0
7789 1
3445 1


How can I get the output as:

<number> <no_0_entries> <no_1_entries>

i.e.

7789 3 2
3445 1 2
1223 1 0
4567 1 0
1212 0 1
Jeg har ikke held med at løse dette, skal du hjælpe. Tak.
  #2 (permalink)  
Old 07-17-2008
Annihilannic Annihilannic is offline Forum Advisor  
  
 

Join Date: May 2008
Location: Sydney, Australien
Stillinger: 1009
Hvad har du prøvet?
  #3 (permalink)  
Old 07-17-2008
jkl_jkl jkl_jkl is offline
Registreret Bruger
  
 

Join Date: Aug 2007
Stillinger: 46
Jeg forsøgte op til dette

Code:
$ awk '$2==0' file.txt > file.txt.0
$ awk '$2==1' file.txt > file.txt.1

$ cat file.txt.0
7789 0
1223 0
4567 0
7789 0
7789 0
3445 0

$ cat file.txt.1
3445 1
7789 1
1212 1
7789 1
3445 1

<0 entries>
$ awk '{count[$1]++}END{for(j in count) print j,count[j]}' file.txt.0
1223 1
4567 1
7789 3
3445 1

<1 entries>
$ awk '{count[$1]++}END{for(j in count) print j,count[j]}' file.txt.1
7789 2
3445 2
1212 1
  #4 (permalink)  
Old 07-17-2008
jkl_jkl jkl_jkl is offline
Registreret Bruger
  
 

Join Date: Aug 2007
Stillinger: 46
Kan nogen hjælpe mig på denne tak. Tak.
  #5 (permalink)  
Old 07-17-2008
jkl_jkl jkl_jkl is offline
Registreret Bruger
  
 

Join Date: Aug 2007
Stillinger: 46
Sådan nå req output, kan du guide.
  #6 (permalink)  
Old 07-17-2008
ghostdog74 ghostdog74 is offline Forum Advisor  
Registreret Bruger
  
 

Join Date: Sep 2006
Indlæg: 2.533
u kan forsøge at skabe array med $ 1 og $ 2 som nøglen.
  #7 (permalink)  
Old 07-17-2008
aigles's Avatar
aigles aigles is online now Forum Advisor  
Registreret Bruger
  
 

Join Date: Apr 2004
Beliggenhed: Bordeaux, Frankrig
Indlæg: 1.420
En mulig løsning med awk :
Code:
awk '
{
   numbers[$1]++;
   zero[$1] += ($2 == 0 ? 1 : 0);
    one[$1] += ($2 == 1 ? 1 : 0);
}
END {
   for (i in numbers) {
      print i,zero[i],one[i]
   }
}' inputfile
Jean-Pierre.
Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 06:19 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0