我是Perl的新手,並正在爲此而苦苦掙扎。我如何使下面的代碼迭代asterisk_Output for循環的每次運行?目前,它在for循環的第一次迭代中完成while循環,但不在後續循環中完成。Perl while while循環只在for循環中循環一次
open(asterisk_Output, "/usr/sbin/asterisk -rx \"sip show registry\"|") or die $!;
foreach (@monitor_trunks){
while (my $line = <asterisk_Output>) {
#Perform some action... Such as comparing each line.
}
}
我有它的工作的唯一途徑是通過把內部的頂線環,但是這是聯合國需要做出的外部命令多次調用。
什麼是@ monitor_trunks?這與外部命令有關嗎? – 2014-10-19 20:57:05
查看http://stackoverflow.com/questions/12043592/perl-re-reading-from-already-read-filehandle – 2014-10-19 20:57:47
@martinclayton鑑於文件句柄是從外部命令輸出而不是文件,該解決方案將可能會返回非法尋求。 – Miller 2014-10-19 21:34:54