내가 Ctrl 키를 예를 a
, b
, c
에 대한 Enter a string:
후 입력 한 다음 두 번 내가 ReadKey
에 정지하지 않는 무한 루프를 얻을 D + 그리고 나는 Q 키로 멈출 수 없습니까? 루프를 종료합니다기간 :: ReadKey, "STRG + D"와 STDIN
#!/usr/bin/env perl
use warnings;
use 5.10.1;
use Term::ReadKey;
while(1) {
my $c;
say "Press the \"q\" key to quit.";
print "Press the \"e\" key to enter a string: ";
{
$|++;
Term::ReadKey::ReadMode 'ultra-raw';
$c = ReadKey 0;
Term::ReadKey::ReadMode 'restore';
}
exit if ord($c) == 3; # Control C
last if $c eq 'q';
if ($c eq 'e') {
print "\nEnter a string: ";
my $string = <>;
if (not defined $string) {
say "Undefined";
}
else {
chomp $string;
say "You entered |$string|";
}
}
say "Still running";
}
어떻게'Ctrl'-'D'를 잡을 수 있습니까? –