![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| 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 |
| Flett tekstfiler mens kombinere flere header / trailer-poster på en hver. | oordonez | Shell programmering og Skripting | 4 | 11-17-2008 11:06 |
| Hva er din alder? (Part 2) | Perderabo | What's on Your Mind? | 37 | 07-20-2007 01:27 |
| Tell No of Records i filen uten telling Topptekst og Trailer Records | guiguy | Shell programmering og Skripting | 2 | 06-07-2007 01:15 |
| Hjelp sammenligne 2 filer for å finne slettede poster | eja | UNIX for Dummies Spørsmål og svar | 2 | 04-03-2007 09:53 |
| Slik pakker du ut duplikatinnhold poster med tilhørende header posten | run_eim | UNIX for Dummies Spørsmål og svar | 17 | 01-16-2007 11:46 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
sammenlikne del av hodet med en del av detaljerte poster.
Hei,
Jeg LIL forveksles med følgende problem. Jeg har en fil som har følgende overskrift: IMSHRATE_043008_101016 et eksempel detaljerte posten er:9820101 A982005000CAVG030108000000000000010169000MAR 2008 9820102 MAR 2008 D030108 Jeg trenger å sammenligne del av Header (det er markert med rødt Skrift og en DDMMÅÅ format) med Del av Detaljert posten (dens merket med gult font og også DDMMÅÅ format). Problemet er det finnes tusenvis av slike detaljerte poster (på en gjennomsnittlig 50000 poster) i en enkelt fil. Kan noen hjelpe meg i å sammenligne disse 'del av overskriften "med" en del av detaljerte posten' highlightened i Rød og Gul skrift i eksemplet ovenfor? Hilsen, Cmaroju |
|
||||
|
Hei,
Er den gule markert delen er løst i alle detaljer linjer? likevel, under perl kan hjelpe deg litt skriving (a.txt): Code:
IMSHRATE_043008_101016 9820101 A982005000CAVG 030108 000000000000010169000MAR 2008 9820102 MAR 2008 D030108 9820101 A982005000CAVG 030109 000000000000010169000MAR 2008 9820102 MAR 2008 D030108 9820101 A982005000CAVG 043008 000000000000010169000MAR 2008 9820102 MAR 2008 D030108 Code:
MSHRATE_043008_101016 9820101 A982005000CAVG 030108 000000000000010169000MAR 2008 9820102 MAR 2008 D030108 Smaller than header 9820101 A982005000CAVG 030109 000000000000010169000MAR 2008 9820102 MAR 2008 D030108 Bigger than header 9820101 A982005000CAVG 043008 000000000000010169000MAR 2008 9820102 MAR 2008 D030108 Equal with header Code:
open FH,"<a.txt" or die "Can not open file\n";
my @arr=<FH>;
close FH;
$arr[0]=~m/(.*)_([0-9][0-9])([0-9][0-9])([0-9][0-9])_(.*)/;
$header=$4.$2.$3;
print $arr[0];
for($i=1;$i<=$#arr;$i++){
my @temp=split(" ",$arr[$i]);
$temp[2]=~m/([0-9][0-9])([0-9][0-9])([0-9][0-9])/;
my $body=$3.$1.$2;
print $arr[$i],($body>$header)?"Bigger than header\n":($body==$header)?"Equal with header\n":"Smaller than header\n";
}
|
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|