sub process_dir{ my $directory = shift; my @file = &open_directory($directory); for my $processing(@file){ my $file= &encrypt_file($processing); my $encrypted_output = "$dir/$processing"; #$dir is a global declared at the top open OUT, "> $encrypted_output" || die "can't $!"; select OUT; print $file; rename("$dir/$file", "$dir/$file.pgp"); } } sub encrypt_file{ my $file = shift; my $pgp = Crypt::OpenPGP->new; my $ciphertext = $pgp-encrypt( Filename => $file, Recipient => $key_id, Armour => 1, ); return($ciphertext);