Perl プログラム内で node.js スクリプトを生成しています。それを JavaScript インタープリターとして node.js を介して実行したいと考えています。$script
ノードをディスクに書き込んでノードを呼び出し、その後出力を取得せずにノードを実行するにはどうすればよいでしょうか。
system
この目的に適していると思われるコマンドを使用しています。
Perl プログラム内で node.js スクリプトを生成しています。それを JavaScript インタープリターとして node.js を介して実行したいと考えています。$script
ノードをディスクに書き込んでノードを呼び出し、その後出力を取得せずにノードを実行するにはどうすればよいでしょうか。
system
この目的に適していると思われるコマンドを使用しています。
IPC::RunまたはIPC::Open3を使用します。
use strictures;
use IPC::Run qw(run);
use autodie qw(:all run);
my $in = '… JavaScript goes here …';
my $out;
run ['node'], \$in, \$out;
open
の代わりに使用system
#!/usr/bin/perl
open(FOO, "|node");
print FOO "console.log('hello world');";
または、perl スクリプト内から行う必要がない場合は、シェルからのみ:
$ ./myscript.pl | node
myscript.pl
JavaScriptコードを出力した後に終了する場所