wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了windows – 如何在cygwin下的Perl脚本中处理箭头键?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我在cygwin下运行Perl脚本,它从< STDIN>获取输入.并持续处理请求. #!/usr/bin/perl print "Enter Input:"; while(<STDIN>) { print "Recieved Input: $_"; print "Enter Input:"; } $perl testPerl.pl Enter
@H_696_15@
我在cygwin下运行Perl脚本,它从< STDIN>获取输入.并持续处理请求.

#!/usr/bin/perl
print "Enter Input:";
while(<STDIN>) {
    print "Recieved Input: $_";
    print "Enter Input:";
}



    $perl testPerl.pl        
    Enter input:input1
    Recieved input:input1
    Enter input:inpt2
    Recieved input:input2
    Enter input:

现在,我想在当前提示符处的向上箭头:“输入输入:”以获取先前的输入,即“input2”,“input1”@H_674_24@

在windows enivronment(cmd.exE)下运行时,它的行为与预期的一样
但是cygwin下的问题是向上箭头字面意思是将光标向上移动1行,即它接受“接收输入:输入2”行@H_674_24@

分享对此的看法.@H_674_24@

解决方法

查看Term :: Readline模块.这将接管您的程序的输入,并处理历史,这是我认为你在谈论的.

这将是您的程序直接翻译为使用Term :: ReadLine:@H_674_24@

 use Term::readLine;
 my $term = new Term::readLine 'Simple Perl calc';
 my $prompt = "Enter Input: ";
 while ( defined ($_ = $term->readline($prompt)) ) {
   print "Recieved Input:$_\n";
   $term->addhistory($_) if /\S/;
 }

大佬总结

以上是大佬教程为你收集整理的windows – 如何在cygwin下的Perl脚本中处理箭头键?全部内容,希望文章能够帮你解决windows – 如何在cygwin下的Perl脚本中处理箭头键?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。