foreach (grep /^\d+$/, @ARGV) { $! = $_; print "$_: $!"; } #### $ perl -le'print "$_: ", $! = $_ foreach grep /^\d+$/, @ARGV' 13 20 ## It even respects your locale settings 13: Permiso denegado 20: No es un directorio