Como los operadores, aquí sólo mencionaré las estructuras de control de Perl que más uso, muy parecidas a las de lenguajes como C. Podéis consultar guía de referencia de Perl para ver toda la variedad.
while(condicion) # ejecuta un bloque de codigo mientras se cumpla cierta condicion { # bloque de codigo last if(condicion2); # termina el bucle si se da condicion2 if(condicion3) # si se da condicion3 { # bloque de codigo } elsif(condicion4) # alternativa si se da condicion4, en caso contrario ejecuta else { # bloque de codigo alternativo } else { # otro bloque de codigo } next if(condicion5); # salta a la siguiente iteracion si se da condicion5 sin ejecutar bloque4 # bloque de codigo 4 } for($i=0;$i<20;$i++) # ejecuta el bloque de codigo 20 veces { # bloque de codigo die if(condicion6) # termina el programa, no solo el bucle, si se da condicion6 } foreach $elemento (@arreglo) # bucle sobre cada uno de los elementos de un @arreglo { # procesa cada $elemento }