Um dos lemas do Perl é TIMTOWTDI (pronuncia-se "tim bajulador " ) . É um acrônimo que significa "não é mais do que uma maneira de fazê-lo. " Assim como tudo em Perl , há muitas maneiras de capturar a entrada padrão . Entre eles está um atalho para a leitura de todas as linhas em um arquivo e fazer algo com eles individualmente. Uma vez que esta é uma ação comum em programas de filtragem tipo Unix , ele é usado com muita freqüência em programas Perl . Instruções
1
Use o operador " ângulo " . Perl tem quatro filehandles abertas por padrão : . STDIN , STDOUT , STDERR e dados, dos quais STDIN é o identificador da entrada padrão , usada para capturar a entrada padrão
2
Utilize o operador ângulo de ler uma única linha do filehandle passado para ele , e quer loja no padrão $ _ variável ou usá-lo como o lado direito de uma expressão de atribuição . O operador de " ângulo " é um filehandle rodeado por menos do que e maiores do que os símbolos , também referidos como " suportes de ângulo . " " $ a = ";
3
Use o operador ângulo em um loop while. O operador colchete angular deve ser a única coisa em expressão booleana do loop while quando usar colchetes em um loop while. Toda vez que o loop while é executado, ele vai ler uma linha e atribuí-lo ao operador $ _ . Quando não houver mais linhas para ler, o loop while vai acabar : " while ( ) { chomp ; # Chomp o $ _ impressão variável; # Imprimir a variável $ _ }"
4
Atribuir o operador ângulo a uma lista. Atribuir os resultados do operador ângulo para uma lista é como dizer " guardar todas as linhas deste filehandle a esta lista. " Quando você atribui o operador ângulo para uma lista, outro atalho é realizada , que atribui todas as linhas de entrada para a lista: "@ my_list = ";
5
lido do filehandle STDIN usando a função de leitura . O menor que lê apenas linhas completas , e uma vez que este pode não ser o que você quer fazer, a função de leitura permitem que você leia qualquer quantidade de bytes em uma variável . Ele usa três parâmetros: FileHandle , a variável para armazená-lo e se o número de bytes a ler. O exemplo a seguir lê 10 bytes em $ buffer: "read ( STDIN , $ buffer, 10); "