No::Worries::File(3)
πΈ NAME πΈ
okay so this is No::Worries::File(3), hanging out under User Contributed Perl Documentation, and it is literally file handling without worries. It's giving βyour bestie wrapped the standard file functions so you can stop wrestling them by handβ energy. π
β¨ SYNOPSIS β¨
use No::Worries::File qw(file_read file_write file_update);
# read a file
$data = file_read($path);
# idem but with data returned by reference
file_read($path, data => \$data);
# write a file
file_write($path, data => "hello world");
# idem but with data passed by reference
file_write($path, data => \"hello world");
# verbosely update a file
file_update($path, data => "hello world", diff => 1);
π DESCRIPTION π
This module makes file handling lowkey easy by giving you convenient wrappers around standard file functions. All the functions die() on error. No cap. π
π FUNCTIONS π
This module provides the following functions β none of them are exported by default, so don't expect them to just show up in your namespace uninvited. π
π file_read(PATH[, OPTIONS])
Reads the file at the given path and hands you its contents. Supported options:
binaryβ treat the file as binary.binmodeβ binary mode to use.bufsizeβ buffer size to use for I/O operations.dataβ return the file contents via this scalar reference or code reference.handleβ file handle to use.
π¦ file_write(PATH[, OPTIONS])
Writes the given contents to the file at the given path. Supported options:
binaryβ treat the file as binary.binmodeβ binary mode to use.bufsizeβ buffer size to use for I/O operations.dataβ provide the file contents via this scalar, scalar reference or code reference.handleβ file handle to use.
π file_update(PATH[, OPTIONS])
Checks the text file at the given path and updates it if needed, printing what has been done on stdout. Supported options:
dataβ provide the file contents via this scalar.diffβ show differences.noactionβ do not update the file.silentβ do not print any message on stdout.
π¦ OPTIONS π¦
Both file_read() and file_write() support a handle option that can contain a file handle to use. When given, this handle will be used (and closed at the end of the I/O operations) as is, without calling binmode() on it β see below, bestie. π
These functions also support a binary option and a binmode option specifying how the file handle should be treated with respect to binmode().
- If
binmodeis set,binmode()will be used with the given layer. - If
binmodeis not set butbinaryis true,binmode()will be used without any layer. - If neither
binmodenorbinaryare set,binmode()will not be used. This is the default. π
file_read() can be given a code reference via the data option. Each time data is read via sysread(), the subroutine will be called with the read data. At the end of the file, the subroutine will be called with an empty string. π«Ά
file_write() can be given a code reference via the data option. It should return data in a way similar to sysread(), returning an empty string to indicate the end of the data to be written to the file. β¨
file_update() only supports text files (no binary or binmode options) and the data option can only be a scalar. Periodt. π
π GLOBAL VARIABLES π
This module uses the following global variables β none of them are exported:
$DefaultBufSizeβ default buffer size to use for I/O operations if not specified via thebufsizeoption (default:1MB).
π SEE ALSO π
No::Worries.
π AUTHOR π
Lionel Cons <http://cern.ch/lionel.cons>
Copyright (C) CERN 2012-2019
okay bestie, that's the whole No::Worries::File(3) vibe. This page is rocking perl v5.32.1, dated 2021-10-18 β now go handle those files with zero worries and main character energy πβ¨
π¦ where this page comes from
- epel 9: perl-No-Worries 1.7-1.el9 Β· GPL+ or Artistic
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms