File::Attributes lets you assign attributes to files (and read them, and
list them, and delete them).
This module provides functions for handling unicode byte order
marks, which are to be found at the beginning of some files and
streams.
The intention of File::BOM is for files with BOMs to be readable
as seamlessly as possible, regardless of the encoding used.
This module can be used to find directories and files as specified by the XDG
Base Directory Specification. It takes care of defaults and uses File::Spec to
make the output platform specific.
This module forked from File::MimeInfo.
For this module the XDG basedir specification 0.6 was used.
This module provides a simple interface for monitoring
one or more files or directories and reporting any changes
that are made to them.
File::NCopy::copy copies files to directories, or a single file to
another file. You can also use a reference to a file handle if you wish
when doing a file to file copy. The functionality is very similar to
cp. If the argument is a directory to directory copy and the recursive
flag is set then it is done recursively like cp -R. In fact it behaves
like cp on Unix for the most part.
If called in array context, an array of successful copies is returned,
otherwise the number of successful copies is returned. If passed a file
handle, it's difficult to make sure the file we are copying isn't the
same that we are copying to, since by opening the file in write mode it
gets pooched. To avoid this use file names instead, if at all possible,
especially for the to file. If passed a file handle, it is not closed
when copy returns, files opened by copy are closed.
File::NFSLock - perl module to do NFS (or not) locking.
The module is based of concept of hard linking of files being atomic
across NFS. This concept was mentioned in Mail::Box::Locker (which was
originally presented in Mail::Folder::Maildir). Some routine flow is
taken from there -- particularly the idea of creating a random local
file, hard linking a common file to the local file, and then checking
the nlink status. Some ideologies were not complete (uncache mechanism,
shared locking) and some coding was even incorrect (wrong stat index).
File::NFSLock was written to be light, generic, and fast.
File::Path::Expand expands user directories in filenames. For the
simple case it's no more complex than s{^~/}{$HOME/}, but for other
cases it consults C<getpwent> and does the right thing.
File::Flock is a wrapper around the flock() call. The only thing it
does that is special is that it creates the lock file if the lock file
does not already exist.
It will also try to remove the lock file. This makes it a bit
complicated.
http://search.cpan.org/dist/File-BasicFlock
File::Binary is a perl module that provides an interface to modify
and read binary files.
File::PathConvert provides functions to convert between absolute and
relative paths, and from logical paths to physical paths on a variety of
filesystems, including the URL 'filesystem'.
For new programs, it is probably better to use File::Spec and Cwd
modules, if you can help it.