![]() |
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.
|
|
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 |
| mangel på forståelse> irriterende feil | jzacsh | Shell programmering og Skripting | 21 | 4 uker siden 04:10 |
| feil i produksjonen av Perl-skript | namishtiwari | Shell programmering og Skripting | 2 | 06-15-2009 06:02 |
| Perl Feil med ftptail script | Cooki3s! | UNIX for Dummies Spørsmål og svar | 2 | 05-04-2009 12:46 |
| Hjelp forståelse syntaksfeil Issue | warlock129 | Shell programmering og Skripting | 6 | 04-26-2009 08:02 |
| Perl-skript-feil | pietie | Shell programmering og Skripting | 4 | 10-15-2008 10:05 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
Jeg er ikke sikker på hva alle disse "skift" linjene er der for, men løkke problemet er her:
Code:
while ($f2){
($Fld0,$Fld1,$Fld2,$Fld3,$Fld4,$Fld5,$Fld6,$Fld7,$Fld8,$Fld9,$Fld10) = split(/[|\n]/,$f2, -1);
print $f3_out ($Fld0, $Fld1, $Fld2, $Fld3, $Fld4, $Fld10);
}
}
Code:
($Fld0,$Fld1,$Fld2,$Fld3,$Fld4,$Fld5,$Fld6,$Fld7,$Fld8,$Fld9,$Fld10) = split(/[|\n]/,$f2, -1); print $f3_out ($Fld0, $Fld1, $Fld2, $Fld3, $Fld4, $Fld10); } Jeg vet ikke om det vil gjøre koden din gjør noe nyttig, men forhåpentligvis vil den kjøre og du kan videre endre etter behov. |
|
|||||
|
Takk for svaret
Jeg vil den skal sløyfe, men ikke i det uendelige på første linje i fil2. Fil2 har 24000 postene delt i 10 felt jeg har det fungerer Nå men jeg bruker 2 skript til å gjøre det én pakke ut registrerer Andre kamper dem. Det jeg prøver å gjøre er å kombinere dem Til én Thk |
|
||||
|
Hvis du ikke vil at den skal sløyfe uendelige deretter fjerne "loop mens jeg viste deg å fjerne.
---------- Post oppdatert kl 02:25 ---------- forrige oppdatering var ved 02:15 ---------- Kanskje dette er w2hat du ønsker å gjøre: Code:
#!/usr/local/bin/perl
use warnings;
use strict;
die "Usage: $0 <file1> <file2> <file_out>\n" unless $#ARGV==2;
my ($file1, $file2, $file3) = @ARGV;
open my $f1_in, $file1 or die "Could not open $file1\n";
open my $f2_in, $file2 or die "Could not open $file2\n";
open(my $f3_out, '>', $file3) or die "Could not open $file3: $!\n";
while (my $f1 = <$f1_in>) {
my $f2 = <$f2_in>;
$f1 =~ s/^\s+|\s+$//g;
$f2 =~ s/^\s+|\s+$//g;
my($Fld0,$Fld1,$Fld2,$Fld3,$Fld4,$Fld5,$Fld6,$Fld7,$Fld8,$Fld9,$Fld10) = split(/\|/,$f2, -1);
print $f3_out join(',',$Fld0, $Fld1, $Fld2, $Fld3, $Fld4, $Fld10);
}
|
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|