Оператор foreach
Оператор foreach позволяет организовать цикл путем перебора элементов списка. В качестве такого списка можно использовать массив:
foreach $arg (@ARGV) { print $arg; }
В данном случае переменная цикла $arg пробегает по всем аргументам командной строки скрипта, которые задаются встроенным массивом @ARGV. Аналогично можно пройти и по всем переменным окружения:
foreach $arg (keys %ENV) { print "$arg:$ENV{$arg}\n"; }
Отличие данного примера от предыдущего заключается в том, что переменные окружения представляют собой хеш. Поэтому сначала получаем массив ключей (имен переменных окружения), переменная $arg пробегает по этому массиву, и в цикле печатаются пары "имя переменной — значение переменной".