使用PHP的proc_open()
,我可以启动一个过程,从STDOUT
和STDERR
(分别)读取使用fread()
:当所述工艺运行在时间的字节的任意数,检测当该过程在STDOUT
和STDERR
管使用feof()
完成,然后使用proc_close()
获取进程的退出代码。我已经在PHP中完成了所有这些。它运作良好,并给我很多控制。什么是PHP的proc_open(),proc_close()等Perl的等价物?
有没有办法做到所有这些事情在Perl?总之,我需要能够做到以下几点:
- 启动外部进程
- 阅读
STDOUT
和STDERR
分别 - 阅读
STDOUT
和STDERR
字节在任意一个时间数字,而这个过程是运行(即不必等待处理完成) - 检测何时结束处理
- 获取进程的退出代码
在此先感谢您的答案。
我知道我可以做什么最我想是这样的: 系统(“命令2>的stderr.txt>标准输出.TXT &'); ,然后直接读取文件,而进程正在运行,但我想不出一个简单的方法,当该过程完成检测(不涉及解析“PS ......”输出或东西)或得到它的退出代码 – jnrbsn 2010-10-03 04:46:17