我正在使用Windows x64机器,并试图从命令中捕获STDOUT和STDERR流。我也必须写入命令的STDIN。我试图使用perl的IPC :: Open3,没有运气。我使用发布的脚本here和命令作为此脚本here。我当然用Windows的“perl test.pl”替换了$ cmd变量。perl使用open3写入STDIN并捕获STDOUT和STDERR
它应该打印'StdOut!'和'StdErr!',以及pid,但我只能得到PID。我不知道是因为我的操作系统,还是因为线程已经有10年了(没有大的事情,Perl 5几乎是18年,对吧?)。另一个和尚张贴this脚本来解决另一个问题,但在我的电脑上它永远不会退出。
任何人都可以给我一个使用open3在perl中启动命令,写入其STDIN并捕获其STDERR和STDOUT的实例吗?