50: my @diff = ; 51: 52: sub calcdiff { 53: my $old = shift; 54: my $new = shift; 55: if ($new > $old) { 56: my $ergebniss_1 = ($new - $old); 57: return($ergebniss_1); 58: } 59: elsif ($old > $new) { 60: my $ergebniss_2 = ($old - $new); 61: return ($ergebniss_2); 62: } 63: } 64: 65: my @order; 66: while( my $line = @diff ){ 67: if ( $line =~ m/^(.+):\s+\/.+:$/) { 68: push @order, [$1."\n"]; 69: } 70: elsif ( $line =~ m/(^\d+)\s+(.+)\s+(.)\s+(\d+)\s+(.+)\s+$/ ) { 71: if ($3 eq "\|") { 72: push @{ $order[-1] },"\t$2\t$1\t$4\t" . "Diff: " . &calcdiff("$1","$4") . "\n"; 73: } 74: elsif ($3 eq "\<") { 75: push @{ $order[-1] }, "\tNew File:\t$5\tSize: $4\n"; 76: } 77: elsif ($3 eq "\>") { 78: push @{ $order[-1] },"\tFile deleted:\t$5\n"; 79: } 80: } 81: }