my (@files,@dirs); for( @allfiles ){ if( -d catfile( $line , $_ ) ){ push @dirs,$_ } else { push @files,$_ } }