私は以下のようなことをするPerlプログラムを持っています:
#!/usr/bin/env perl
use strict;
use warnings;
my $exe = "C:\\project\\set_env_and_run.bat";
my $arg1 = "\\\\Server\\share\\folder1";
my $arg2 = "D:\\output\\folder1";
my $cmd = "$exe \"$arg1\" \"$arg2\"";
my $status = system("$cmd > c:\\tmp\\out.txt 2>&1");
print "$status\n";
この Perl コードを eval ブロックで呼び出しています。呼び出されると、ステータスが 0 として出力されますが、バッチ ファイルは実際には実行されていません。この理由は何でしょうか?上記の「システム」呼び出しに問題はありますか?
ありがとう、ジッツ