В этой части Учебника Perl мы узнаем, как дописывать данные в файл с помощью Perl.
В предыдущей части мы научились записывать в файлы. Это удобно, когда мы создаем файл с нуля, но в некоторых случаях вам понадобится сохранять исходный файл, дописывая новые строки в конец.
Наиболее очевидный случай - это запись в лог-файл.
Вызов
open(my $fh, '>', 'отчет.txt') or die ...
Открыв файл для записи (со знаком >
), мы удалим все содержимое файла, которое могло в нем
быть.
Если мы хотим дописать данные в конец файла, нужно использовать два знака "больше", например:
open(my $fh, '>>', 'отчет.txt') or die ...
Вызов этой функции откроет файл для дописывания. То есть прежнее содержимое файла останется в сохранности, а все, что мы будем записывать в него с помощью
say
, добавится в конец.Вот полный пример:
use strict;
use warnings;
use 5.010;
my $filename = 'отчет.txt';
open(my $fh, '>>', $filename) or die "Не могу открыть файл '$filename' $!";
say $fh "Мой первый отчет, сгенерированный с помощью perl";
close $fh;
say 'готово';
Если запустить этот скрипт несколько раз, мы увидим, что файл растет. Каждый запуск скрипта будет добавлять еще одну строку в файл.