The UNIX and Linux Forums  

Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
fjerne duplikater stevie_velvet Shell programmering og Skripting 5 07-07-2008 08:42
fjerne nullen risshanth UNIX for Dummies Spørsmål og svar 0 02-08-2008 06:51
fjerne duplikater og sort-k orahi001 UNIX for Dummies Spørsmål og svar 3 01-25-2008 09:59
Stripping ledende private på høyre rettferdiggjøres navn Marcia P UNIX for Dummies Spørsmål og svar 2 02-28-2006 10:32
Fjerne duplikater giannicello Shell programmering og Skripting 12 09-14-2005 07:12

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øk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 03-18-2009
crazyhpux crazyhpux is offline
Registrert bruker
  
 

Bli Date: Mar 2009
Innlegg: 14
Legge til null med Høyre begrunnes og Fjerne duplikater

Hei alle sammen. Jeg håper noen kan hjelpe meg her ute. Jeg har 2 filer. Det ser slik ut:

Fil 1:

Abc1, defg, 50.00, mno, 990
abc2, katter, 100.00, dukker, 991
abc3, hunder, 1.00, behandle, 992


Fil 2:

990, fly, rullebane, lege
991, jets, fugler, mye
990, * fly, rullebane, lege
992, biler, Ford, Toyota

Her er hva jeg vil gjøre:

1. I fil 1, kolonne 3, beløpet, vil jeg gjerne at den skal være riktig begrunnet med ledende null

2. I fil 2, til alle de dupliserte må fjernes. Som 990, * fly

3. Etter fil 1 og 2 er ferdig, så bli med dem ved å bruke nøkkelen i kolonne 5 i filen 1 og kolonne 1 i fil 2.

Hvis du trenger mer forklaring, la meg vite. Jeg setter pris på det sterkt hvis noen kan hjelpe meg ut. Takk.
  #2 (permalink)  
Old 03-18-2009
crazyhpux crazyhpux is offline
Registrert bruker
  
 

Bli Date: Mar 2009
Innlegg: 14
for øvrig, ville den endelige filen bli omtrent slik:

Abc1, defg, 000050.00, mno, 990, fly, rullebane, lege
abc2, katter, 000100.00, dukker, 991, jets, fugler, mye
abc3, hunder, 000001.00, behandle, 992, biler, Ford, Toyota

for nummer 3, vil jeg anta bruke join kommandoen?
  #3 (permalink)  
Old 03-18-2009
vidyadhar85's Avatar
vidyadhar85 vidyadhar85 is offline Forum Staff  
Moderator (The Tutor)
  
 

Bli Dato: juni 2008
Beliggenhet: INDIA
Innlegg: 1400
Sitat:
Originally Posted by crazyhpux View Post
for øvrig, ville den endelige filen bli omtrent slik:

Abc1, defg, 000050.00, mno, 990, fly, rullebane, lege
abc2, katter, 000100.00, dukker, 991, jets, fugler, mye
abc3, hunder, 000001.00, behandle, 992, biler, Ford, Toyota

for nummer 3, vil jeg anta bruke join kommandoen?
den første filen kan ordnes på denne måten
Code:
 
awk -F, '{printf "%s,%s,%09.2f,%s,%s\n",$1,$2,$3,$4,$5}' filename
  #4 (permalink)  
Old 03-18-2009
summer_cherry summer_cherry is offline Forum Advisor  
Registrert bruker
  
 

Bli Dato: juni 2007
Sted: Beijing Kina
Innlegg: 1088
Hei, håper nedenfor kan hjelpe deg.
Men vet ikke hvor mange ledende '0 'du forventer.

Code:
awk -F"," '{
        if(_[$1]==0){
                _[$1]=1
                print $0
        }
}' a > t1
join -t"," -11 -25 t1 b
  #5 (permalink)  
Old 03-19-2009
crazyhpux crazyhpux is offline
Registrert bruker
  
 

Bli Date: Mar 2009
Innlegg: 14
Sitat:
Originally Posted by summer_cherry View Post
Hei, håper nedenfor kan hjelpe deg.
Men vet ikke hvor mange ledende '0 'du forventer.

Code:
awk -F"," '{
        if(_[$1]==0){
                _[$1]=1
                print $0
        }
}' a > t1
join -t"," -11 -25 t1 b
takker for responsen så langt. Feltet vil være 9 siffer. Så det vil variere på hvor mange null er plass. Prøver å gjøre det se slik ut:

000000000
000000100
000000090
000001100
000012000

De 2 siste siffer representerer cent. Eksempel 5.50 skal 000000550
  #6 (permalink)  
Old 03-19-2009
rikxik's Avatar
rikxik rikxik is offline
Registrert bruker
  
 

Bli Dato: desember 2007
Innlegg: 250
Code:
awk -F"," '{
        if(_[$1]==0){
                _[$1]=1
                print $0
        }
}' a > t1
join -t"," -11 -25 t1 b | nawk -F"," '$3=sprintf("%011.2f",$3);gsub(/\./,"",$3)'
  #7 (permalink)  
Old 03-20-2009
crazyhpux crazyhpux is offline
Registrert bruker
  
 

Bli Date: Mar 2009
Innlegg: 14
Sitat:
Originally Posted by rikxik View Post
Code:
awk -F"," '{
        if(_[$1]==0){
                _[$1]=1
                print $0
        }
}' a > t1
join -t"," -11 -25 t1 b | nawk -F"," '$3=sprintf("%011.2f",$3);gsub(/\./,"",$3)'
skulle du være så snill å forklare koden litt for meg. Takk for hjelpen.
Closed Thread

Hugseliste

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 08:17.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0