我有大量需要执行的脚本。我喜欢观察这些脚本的输出,因为它们用于调试目的。
通常 print qx/foo/
收集 foo 的 stdout 输出,直到 foo 完成,然后打印它。
我想将它流式传输出来,以便我可以观察 foo 的输出,并以某个标量捕获 foo 的输出。
理想情况下:
$cmd = "foo";
$result = stream_and_store($cmd);
我有理由确信那里有一些复杂的方法,包括一些漂亮的 CPAN 模块。
我希望能够在基本 Perl 5.8.8(是的,古董,但这就是环境)中做到这一点,而无需添加其他依赖项。
最佳答案
小心你的愿望:
$output = `somecmd | tee /dev/tty`;
关于perl - 从 qx 子进程流式传输标准输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7197611/