perldoc -f stat
stat Returns a 13-element list giving the status info for a file,
either the file opened via FILEHANDLE or DIRHANDLE, or named by
EXPR. If EXPR is omitted, it stats $_. Returns the empty list
if "stat" fails. Typically used as follows:
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
$atime,$mtime,$ctime,$blksize,$blocks)
= stat($filename);
Обратите внимание на возвращаемое значение $size
. Это размер файла в байтах. Если вы собираетесь сохранить весь файл в памяти, вам понадобится как минимум $ байтов. Опять же, вам может понадобиться намного больше (или даже намного меньше), в зависимости от того, что вы делаете с содержимым файла.