如何从Perl脚本中的外部命令收集输出?
发布时间:2020-12-16 06:10:58 所属栏目:大数据 来源:网络整理
导读:我有一个名为TET.EXE的工具,它是PDFlib系列的产品,用于提取特定文本的坐标.在Perl脚本中使用这些坐标,我们可以提取所需的文本.这是一个手动进程来运行.EXE,然后将协调给Perl,所以任何人都可以建议我让整个过程动手. 我的意思是Perl脚本本身应运行.EXE并获取
我有一个名为TET.EXE的工具,它是PDFlib系列的产品,用于提取特定文本的坐标.在Perl脚本中使用这些坐标,我们可以提取所需的文本.这是一个手动进程来运行.EXE,然后将协调给Perl,所以任何人都可以建议我让整个过程动手.
我的意思是Perl脚本本身应运行.EXE并获取所需的坐标并提取文本.在linux中使用哪些命令来运行这个perl脚本? 解决方法
如果我理解正确,你希望perl启动一个可执行文件并执行打印到stdout的文本….在这种情况下有几个选项:
Using backticks: my $output = `TED.EXE`; 这会将TED.EXE命令的输出放在变量$output中,并且很可能足以满足您的需要. using IPC::Open3: use IPC::Open3; my($wtr,$rdr,$err); my $pid = open3($wtr,$err,'some cmd and args','optarg',...); 这将运行您的命令并将$wtr,$rdr和$err与标准输入,输出和错误流相关联. 还有其他方法可以做你想要的(Expect.pm,Run3等),但我相信上面提到的应该是足够的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |