このサイトは今週初めにとって良い答えが出たと勧誘 perlの
スクリプトは私の理解から、このスクリプトからの回答をした
しかし、今私は、バグがあると私切り株だ。それを正しく解析していません
出力は、最初の行にマイ$ F2キー滞在し、無限ループの焼き増し
私はこれより良い方法があるはずだ。しかし、これを解決するために私の望みです
ダン
これは、スクリプトです
コード:
#!/usr/local/bin/perl -w
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;
#$\ = "\n";
my $FS = '|';
$, = ',';
my $Fld0 = shift;
my $Fld1 = shift;
my $Fld2 = shift;
my $Fld3 = shift;
my $Fld4 = shift;
my $Fld5 = shift;
my $Fld6 = shift;
my $Fld7 = shift;
my $Fld8 = shift;
my $Fld9 = shift;
my $Fld10 = shift;
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);
}
}