Язык программирования Perl

         

Функции работы с файлами


В Perl есть целый набор встроенных функций для работы с файлами, с помощью котрых можно манипулировать с самими файлами, а не с данными, хранящимися в них.

Функция rename() переименовывает файл, возвращая логическое значение: 1 при успешном изменении имени и 0 - в противном случае. Ей передаются старое и новое имя файла с абсолютным или относительным путем.

$ok = rename("$path/$old_name", "$path/$new_name");

Функция unlink() удаляет файл или список файлов, возвращая число 1 при успешном удалении и 0 - при ошибке.

unlink($list, $of, $files); # удалить список файлов unlink $file if -e $file; # удалить файл, если он существует

Функция truncate() усекает файл до указанного размера и возвращает число 1 в случае успешного выполнения усечения и неопределенное значение undef - при возникновении ошибки. Файл может задаваться именем или файловым манипулятором. Например:

$ok = truncate($file, $size);

Функция stat() возвращает информацию о файле в виде списка или пустой список при неудаче. Файл может задаваться манипулятором файла или выражением со значением имени файла:

@info = stat($file); # получить всю информацию о файле $size = $info[7]; # размер файла в байтах $modified = localtime($info[9]); # время изменения файла

Подробное описание всех элементов информационного списка можно найти в документации, указав утилите чтения документов имя функции следующим образом:

perldoc -f stat

Функция utime() изменяет у файла (или нескольких файлов из заданного списка) время доступа и время модификации, задаваемые числовыми значениями.

utime($access_time, $modified_time, @list_of_files);

Кроме упомянутых, есть еще встроенные функции для изменения прав доступа и владельца файла, для чтения и создания символических и жестких ссылок. Немало разных функций для работы с файлами имеются в стандартной библиотеке модулей Perl, еще больше можно найти в хранилище модулей CPAN.



Содержание раздела