如何通过用户按键来中断或恢复Perl循环?

Mic*_*Mao 2 perl

这是出于调试目的.我有一个for循环,可以为Cygwin bash的CLI生成一些输出.

我知道我可以将输出重定向到文本文件并使用Perl甚至只是一个普通的文本编辑器来检查为特定迭代打印出的值,只是觉得有点痛苦.

我现在想的是,在for循环中放置一个特殊的子程序,以便在每次迭代开始时"中断",并且只有在用户/程序员点击一个键后才能恢复运行Perl脚本(Enter键盘键?)

通过这种方式,我可以直接检查每次迭代期间打印出的值.

有没有一种简单的方法可以做到这一点,而无需使用额外的库/ CPAN?

ire*_*ses 5

如果您只是想在每次迭代时暂停用户输入,那么只需从循环中的STDIN读取:

my $debug = 1;
while ($looping) {
    if ( $debug ) {
        print "Press enter to continue\n";
        $input = <>;
    }
}
Run Code Online (Sandbox Code Playgroud)

如果设置了调试标志,则程序将暂停直到用户按下回车键,然后循环将恢复.您可以在暂停前打印变量.设置$debug = 0为禁用暂停.

  • 除非你用参数调用脚本. (3认同)