perl 读取阻塞命令行的结果

	open(my $fh, $cmd."|") or return "";
	my $sel = new IO::Select($fh);


	for(my $i=0;$i<$timeout;$i++)
	{
		if (my @ready = $sel->can_read(1)) {
			my $msg = <$fh>;
			chomp $msg;
			$allline.=$msg."\n";
		}
	} 	 
	print $allline,"--finish\n"; ###无论阻塞不阻塞这里都会得到结果, 
	close($fh); 


你可能感兴趣的:(perl 读取阻塞命令行的结果)