如何在Perl中动态切换到STDOUT / STDERR?

前端之家收集整理的这篇文章主要介绍了如何在Perl中动态切换到STDOUT / STDERR?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果我可以根据某些值或内联表达式(不使用if语句)在打印到STDOUT或STDERR之间切换,我很好奇.
print ($someFlag ? STDOUT : STDERR) "hello world!"

显然,该语法不起作用.

解决方法

我认为这将会做你想要的:
print {$someFlag ? *STDOUT : *STDERR} "hello world!";

print的文档中可以看到一个类似的例子.使用typeglobs使其运行严格.

另一个策略是根据$someFlag的值来定义您自己的打印功能,其功能将不同.

原文链接:https://www.f2er.com/Perl/171461.html

猜你在找的Perl相关文章