我在
Windows上运行以下代码片段.从客户端读取后,服务器开始连续监听.我希望在一段时间后终止此命令.
如果我在main.pl中使用alarm()函数调用,那么它会终止整个Perl程序(这里是main.pl),所以我通过将它放在一个单独的Perl文件中来调用这个system命令
并使用system命令在原始Perl文件中调用此Perl文件(alarm.pl).
但是通过这种方式,我无法在原始Perl文件或被调用的Perl文件中调用此system()的输出.
请问任何人请让我知道终止系统()调用的方式或以我上面使用的方式获取输出?
main.pl
my @output = system("alarm.pl"); print"one iperf completed\n"; open FILE,">display.txt" or die $!; print FILE @output_1; close FILE;
alarm.pl
alarm 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始终为空.