This should do it pretty much exactly the way they do it in the movies...
#!/usr/local/bin/perl -w
##################
use strict;
use warnings;
use PPI;
use Term::ANSIColor qw( colored );
$| = 1;
my @files = values %INC;
while ( time - $^T < 5 ) {
my $doc = PPI::Document->new(
splice( @files, rand( @files ), 1 )
);
$doc->prune( $_ ) for qw(
PPI::Token::Pod PPI::Token::Comment
PPI::Statement::Data PPI::Statement::End
PPI::Statement::Include
);
my @lines = split( "\n", $doc->serialize );
for ( splice( @lines, rand( @lines ), rand( 25 ) ) ) {
next unless /\S/;
next if /^\s*1;\s*$/;
print "$_\n";
select( undef, undef, undef, 0.05 );
}
}
print " " x 20, colored(
[qw( bold red blink )],
" SECURITY PROTOCOLS BYPASSED, ACCESS GRANTED\n"
);