#!/usr/bin/perl use strict; use warnings; sub open_file { my $file = shift; my $pattern = "asdf"; open FILE, $file; while (my $line = ) { if ($line =~ m/$pattern/){ print $line; } } } open_file@ARGV