http://www.perlmonks.org?node_id=1086832


in reply to Pressing Delete key ends Term::ReadLine loop

I always use Term::ReadLine in conjunction with Term::Readline::Perl and Term::ReadLine::Gnu, the first one creates an interface for the others and is recommend to install all of them. Here’s a nice shell you can have with Term::ReadLine
use Term::ReadLine; my $shell = Term::ReadLine->new('myshell'); $_ = $shell->Features(); my $history = ${%$_}{autohistory}; $SIG{INT} = 'IGNORE'; while(1) { my $return; $command = $shell->readline('myshell> '); { local $SIG{INT} = sub {die 'End';}; $return = eval($command); } if (!$history) { $term->addhistory($_) if /\S/; } }
You could play with :
myshell> @test = (a,b,c,d) myshell> print "@test"; myshell> a b c d
or
myshell> open OUT, '>/tmp/test'; myshell> print OUT "Hello world !"; close OUT