PERL: Tips & Tricks i ogólnie o czym warto pamiętać

  • Usuwanie elementu z listy, tablicy
    @list = grep(!/$refid/,@list);

    Doświadczenie pokazuje, że nawet w ciasnej pętli jest to duuuża optymalizacja.

  • Wielopoziomowa tablica hasująca
    %hash->{$2} = ()     unless ( %hash->{$2} );
    %hash->{$2}->{$1} = () unless ( %hash->{$2}->{$1} );
    %hash->{$2}->{$1}->{$klucz}       = $wartosc;
  • drukowanie w kolumnach
    printf OUT "\t%-9d\t%-12d\n", $zmiennaA, $zmiennaB;
  • Wyłączanie buforowania na urządzenia wejścia i wyjścia
    select STDERR; $| = 1;
    select STDOUT; $| = 1;
  • Rozmiary okienka konsoli
    my ($rows,$cols) = split(/ /,`/bin/stty size`);
  • Numer błędu ostatnio wywołanej komendy
    print $!;

About this entry