Решение этой задачи базируется на решении предыдущей. Здесь мы берем текущий параметр, открываем файл, имя которого и есть этот параметр, выводим его содержимое на экран и удаляем параметр из списка.
Процесс продолжается до тех пор, пока есть параметры командной строки.
Текст программы:
#! perl -w # Проверка на наличие параметров # в командной строке. print "В командной строке отсутствуют параметры!\n" unless defined $ARGV[0]; # Цикл по выводу на экран текущего файла. # Не будет выполняться, если параметры в # командной строке отсутствуют. while ($ARGV[0]) { print "\nСодержимое файла $ARGV[0]:\n"; # Открыть файл для чтения. # Дескриптор файла помещается в $a. open $a, $ARGV[0]; # Читаем строку из первого файла... while ($line = <$a>) { print $line; # ...и выводим ее на экран. } # Закрываем файл. close $a; # Удаляем значение $ARGV[0], # смещая остальные параметры влево. shift; }