【问题标题】:How to run node.js script without a file, from Perl?如何从 Perl 运行没有文件的 node.js 脚本?
【发布时间】:2012-06-01 03:00:07
【问题描述】:

我正在一个 Perl 程序中生成一个 node.js 脚本,我想通过 node.js 作为一个 JavaScript 解释器来运行它。如何在$script 中运行节点而不将其写入磁盘然后调用节点,然后捕获输出。

我正在使用system 命令,我认为这很适合此目的。

【问题讨论】:

    标签: perl


    【解决方案1】:

    使用IPC::RunIPC::Open3

    use strictures;
    use IPC::Run qw(run);
    use autodie qw(:all run);
    
    my $in = '… JavaScript goes here …';
    my $out;
    run ['node'], \$in, \$out;
    

    【讨论】:

      【解决方案2】:

      使用open 代替system

      #!/usr/bin/perl
      open(FOO, "|node");
      print FOO "console.log('hello world');";
      

      或者,如果您不需要从 perl 脚本中执行此操作,只需从您的 shell:

      $ ./myscript.pl | node
      

      打印javascript代码后myscript.pl退出的地方

      【讨论】:

      • 但我需要获取脚本的输出,然后处理下一个。
      猜你喜欢
      • 2010-09-26
      • 1970-01-01
      • 2013-06-12
      • 2015-02-18
      • 2011-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-04
      • 2013-04-08
      相关资源
      最近更新 更多