my $remote_file = $proc . 'cc.[12]/' . ( $proc eq 'sip' ? 'sipcalls' : 'paccalls'; for my $server ( @servers ) { open( REMOTE, "-|", "ssh $server cat /process/home/$remote_file" ) or die "ssh $server failed: $!"; while () { next unless /whatever/; ... } close REMOTE; }