Я думаю, вы не понимаете, что означает "append" в perl. То, что вы описываете, - это открытие файла и его усечение, т. Е .:
open my $fh, '>', $file;
Это удалит содержимое $file
и откроет новый файл с тем же именем.
Причиной использования open для добавления является наличие файла, который вы не хотите перезаписать. То есть Разница между >
и >>
заключается просто в том, что первый обрезает существующий файл и начинает запись в начале файла, а последний переходит к концу существующего файла и начинает запись в него.
Документация здесь