Как я могу завершить системную команду с тревогой в Perl?
Я использую приведенный ниже фрагмент кода в Windows. Сервер начинает слушать непрерывно после чтения от клиента. Я хочу прекратить эту команду после определенного периода времени.
Если я используютревога() вызов функции внутриmain.pl
затем завершает всю программу Perl (здесьmain.pl
), так я назвал этосистема команда, поместив его в отдельный файл Perl и вызвав этот файл Perl (alarm.pl
) в исходном файле Perl, используясистема команда.
Но таким образом я не смог принять вывод этогоsystem()
не вызывайте ни в исходном Perl-файле, ни в вызываемом Perl-файле.
Может кто-нибудь, пожалуйста, дайте мне знать, как прекратитьsystem()
позвонить или принять вывод таким образом, как я использовал выше?
my @output = system("alarm.pl");
print"one iperf completed\n";
open FILE, ">display.txt" or die $!;
print FILE @output_1;
close FILE;
alarm.plalarm 30;
my @output_1 = readpipe("adb shell cd /data/app; ./iperf -u -s -p 5001");
open FILE, ">display.txt" or die $!;
print FILE @output_1;
close FILE;
В обе стороныdisplay.txt
всегда пусто