如何在反引号中刷新输出在Perl中?

前端之家收集整理的这篇文章主要介绍了如何在反引号中刷新输出在Perl中?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我有这个perl应用程序:
print `someshellscript.sh`;

打印一堆东西需要很长时间才能完成,如何在执行shell脚本的过程中打印输出

看起来Perl只会在完成后打印someshellscript.sh结果,有没有办法在执行过程中进行输出刷新?

解决方法

您可能想要做的是这样的事情:
open(F,"someshellscript.sh|");
while (<F>) {
    print;
}
close(F);

这会运行someshellscript.sh并打开一个读取其输出的管道. while循环读取脚本生成的每行输出并打印出来.有关更多信息,请参见open文档页面.

猜你在找的Perl相关文章