![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| 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. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| brug for hjælp til at sortere | ali560045 | Shell Programmering og Scripting | 2 | 12-04-2007 07:38 AM |
| sortere | prasathlogu | UNIX for dummyer Spørgsmål & svar | 1 | 10-08-2007 07:56 AM |
| sortere hjælpe | unics | Shell Programmering og Scripting | 14 | 04-30-2007 08:28 AM |
| du-h | slags? | fongthai | Shell Programmering og Scripting | 6 | 11-02-2006 08:59 PM |
| Sorter Hjælp! | kev112 | Shell Programmering og Scripting | 3 | 05-30-2005 04:13 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
sortere og opsummere
Hi Guys,
Jeg har en fil i UNIX med dubletter, jeg har brug sortere kommandoen som nedenfor til at slette dubletter baseret på de centrale positioner / kolonner, men nu er jeg ikke ønsker at "slette" dubletter men opsummere nogle af de vigtige numeriske kolonner. Har virkelig brug for hjælp ... HASTER! Thanks in advance. sort-k 1.1,1.92-u-fil> outfile |
|
||||
|
Her er et eksempel:
1288M99G14 ALA201001 +00000000,000 +00000005,000 1288M99G14 ALA201001 +00000000,000 +00000005,000 1288M99G14 ALB201001 +00000005,000 +00000000,000 1288M99G14 ALA201002 +00000000,000 +00000017,000 1288M99G14 ALB201001 +00000017,000 +00000000,000 1288M99G14 ALA201002 +00000000,000 +00000005,000 Output: 1288M99G14 ALA201001 +00000000,000 +00000010,000 1288M99G14 ALB201001 +00000023,000 +00000000,000 1288M99G14 ALA201002 +00000000,000 +00000023,000 Så opsummere ved første 2 felter |
|
||||
|
Prøv at dette ene
filename \u003d $ 1
sort $ filename | awk 'BEGIN (FS \u003d"+"; prev_key1 \u003d ""; prev_key2 \u003d 0; prev_key2 \u003d 0; første \u003d 1;) ( # Print "asdfdafsdfsdfasf |" prev_key1 "|" $ 1 if ($ 1 \u003d\u003d prev_key1) ( prev_key2 + \u003d $ 2; prev_key3 + \u003d $ 3; ) anden ( if (! først) printf ( "% 20.20s +% 08.3f +% 08.3f \ n", prev_key1, prev_key2, prev_key3); else first \u003d 0; prev_key1 \u003d $ 1; prev_key2 \u003d $ 2; prev_key3 \u003d $ 3; ) ) END (printf ( "% 20.20s +% 08.3f +% 08.3f \ n", prev_key1, prev_key2, prev_key3);) ' |
|
|||||
|
Citat:
) |
![]() |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|