diff options
author | Chris Dyer <cdyer@cs.cmu.edu> | 2011-04-18 11:15:52 -0400 |
---|---|---|
committer | Chris Dyer <cdyer@cs.cmu.edu> | 2011-04-18 11:15:52 -0400 |
commit | 9da4a35689d60253efdf60f2a0da6b500fb3da32 (patch) | |
tree | 00f1d91f7bc8a5d12bde5fa5a4d6b7ed98f2bced | |
parent | 4e49b075e0d7340be18121a680fffee2b91bafe6 (diff) |
helper script
-rwxr-xr-x | word-aligner/paste-parallel-files.pl | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/word-aligner/paste-parallel-files.pl b/word-aligner/paste-parallel-files.pl new file mode 100755 index 00000000..ce53b325 --- /dev/null +++ b/word-aligner/paste-parallel-files.pl @@ -0,0 +1,35 @@ +#!/usr/bin/perl -w +use strict; + +my @fs = (); +for my $file (@ARGV) { + my $fh; + open $fh, "<$file" or die "Can't open $file for reading: $!"; + push @fs, $fh; +} +my $num = scalar @fs; +die "Usage: $0 file1.txt file2.txt [...]\n" unless $num > 1; + +my $first = $fs[0]; +while(<$first>) { + chomp; + my @out = (); + push @out, $_; + for (my $i=1; $i < $num; $i++) { + my $f = $fs[$i]; + my $line = <$f>; + die "Mismatched number of lines!" unless defined $line; + chomp $line; + push @out, $line; + } + print join(' ||| ', @out) . "\n"; +} + +for my $fh (@fs) { + my $x=<$fh>; + die "Mismatched number of lines!" if defined $x; + close $fh; +} + +exit 0; + |