我对Perl很新,所以请耐心等待。我想在退出Perl脚本时启动一个c#程序。这可能吗?如果我只是打电话(对一些任意的其他Perl脚本说),父进程将不会退出,直到子进程终止。有没有办法在Perl中打破这种关系?我考虑过只写一个文件,但这需要我总是在后台运行一个不理想的监控服务。
我已经尝试过系统(),但没有成功。以下是我的代码片段:
主要脚本:
...
print "primary call starting\n";
system('reboot.pl');
$count++;
sleep(1);
print "primary call ending\n";
...
辅助脚本(reboot.pl):
...
print "reboot starting\n";
system('timeout 10');
my $iboot_urlcall = $ua->request($iboot_off);
system('timeout 10');
my $iboot_urlcall = $ua->request($iboot_on);
system('timeout 10');
print "reboot ending\n";
...
运行它的stdout结果是:
primary call starting
reboot starting
timeout
timeout
timeout
reboot ending
primary call ending
...
我想要的输出更像......
primary call starting
reboot starting
primary call ending
timeout
timeout
timeout
reboot ending
...
这可能吗?
答案 0 :(得分:0)
假设Unix:
system ( 'your_command &' );
将立即返回,并让您的进程在后台运行。