usando perl, como selecionar as últimas 2 linhas no caso de cada linha ter a mesma palavra?

Bini  --  -21.89753  -20.47853  -20.27835  -18.34952  -16.23454

Bini  --  -16.89753  -14.47853  -13.27835  -12.34952  -11.23454

Bini  --  -10.09014  

meu arquivo tem uma matriz como mostrado acima. E essa matriz começando com Bini é uma matriz com várias linhas, mas estou mostrando apenas 3 linhas aqui. O que eu queria tentar é extrair os últimos 3 elementos das 2 últimas linhas. Então, -12.34952 -11.23454 -10.09014 esses 3 elementos eram o que eu queria. Às vezes, a última linha pode ter elementos de 2 a 5, dependendo dos arquivos. Mas aqui, ele possui apenas 1 elementos da última linha.

O que eu tentei foi o seguinte

while(my $line = <FILE>) {
     if($line =~ /Bini/) {      #extract last 3, 2, 1 element
     my @entries = split(/Ws+/,$line);
     $element1 = (pop@entries);
     $element2 = (pop@entries);
     $element3 = (pop@entries);
     }

Como resultado, pude ver o elemento1 que é -10.09014, mas infelizmente não consegui obter o elemento 2 e o elemento 3. Alguém poderia me ajudar? ..

Eu quero manter meu script original. Quero dizer ,, processo de criação de result.txt e método de abertura de "log", que é o formato de saída.

Bloco de citação

#!/usr/bin/perl use warnings; 
use strict; 
use File::stat; 

open (OUT, ">", "result\.txt") or die "cannot open file\,\n"; #from this plx, I want to creat result.txt 

foreach my $answer (glob "*.log") { # format of reading file will be "log" 

open (FILE, "<", "$answer") or die "Cannot open file\.\n"; 
my @file = split ('\.', $answer);

Bloco de citação

seu método de abertura de erro induzido por arquivo (meu @array = read_file ('input.txt') Eu me pergunto como posso usar o script a partir do meu $ line = 0. do seu script.Embora mudei o formato do txt para o log (por exemplo input.log), ele ainda deu uma mensagem de erro. (read_file 'input.txt' - sysopen: Não existe esse arquivo ou diretório na linha text.plx 6)

.....

questionAnswers(2)

yourAnswerToTheQuestion