summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xword-aligner/paste-parallel-files.pl35
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;
+