NAME
POSIX::1003::FS - POSIX for the file-system
INHERITANCE
POSIX::1003::FS
is a POSIX::1003
SYNOPSIS
use POSIX::1003::FS qw(access R_OK);
if(access($fn, R_OK)) # $fn is readible?
use POSIX::1003::FS qw(mkfifo);
use Fcntl ':mode';
mkfifo($path, S_IRUSR|S_IWUSR) or die $!;
# Absorbed from Unix::Mknod
use POSIX::1003::FS qw(mknod major minor makedev);
use File::stat
my $st = stat '/dev/null';
my $major = major $st->rdev;
my $minor = minor $st->rdev;
mknod '/tmp/special', S_IFCHR|0600, makedev($major,$minor+1);
DESCRIPTION
You may also need POSIX::1003::Pathconf.
Exporter
FUNCTIONS
Standard POSIX
- access(FILENAME, FLAGS)
-
Read
man filetest
before you start using this function! Use the*_OK
constants for FLAGS. - lchown(UID, GID, FILENAMES)
-
Like
chown()
, but does not follow symlinks when encountered. Returns the number of files successfully changed.Warning, POSIX uses different parameter order:
# POSIX specification: # int lchown(const char *path, uid_t owner, gid_t group); # Perl core implementation: my $successes = chown($uid, $gid, @filenames); use POSIX; POSIX::lchown($uid, $gid, $filename) or die $!; use POSIX::1003::FS 'lchown'; my @successes = lchown($uid, $gid, @filenames);
- mkfifo(FILENAME, MODE)
- mknod(PATH, MODE, DEVICE)
-
Create a special device node on PATH. Useful symbols for MODE can be collected from Fcntl (import tag
:mode
). The DEVICE number is a combination from the type (major number), a sequence number and usage information (combined in a minor number). - utime(ATIME, MTIME, FILENAMES)
-
Simply
CORE::utime()
Warning,
POSIX.pm
uses a different parameter order than core.POSIX::utime($filename, $atime, $mtime); CORE::utime($atime, $mtime, @filenames);
Additional
- major(DEVICE)
- makedev(MAJOR, MINOR)
-
Combine MAJOR and MINOR into a single DEVICE number.
my $device = (stat $filename)[6]; my $device_type = major $device; my $sequence_nr = minor $device; my $device = makedev $major, $minor; mknod $specialfile, $mode, $device;
- minor(DEVICE)
CONSTANTS
The following constants are exported, shown here with the values discovered during installation of this module:
The constant names for this math module are inserted here during installation.
SEE ALSO
This module is part of POSIX-1003 distribution version 0.07, built on December 28, 2011. Website: http://perl.overmeer.net. The code is based on POSIX, which is released with Perl itself.
COPYRIGHTS
Copyrights of the perl code and the related documentation by 2011 by Mark Overmeer. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html