#!/usr/bin/perl use strict; use warnings; my $line; my %out = map { $_ => undef } qw( op0 op1 op2 op3 ); ( open $out{ $_ }, '>', $_ or die "can't: $!\n" ) for keys %out; while ( $line = <> ) { print $_ $line for values %out; }