NAME¶
Archive::Cpio - module for manipulations of cpio archives
SYNOPSIS¶
use Archive::Cpio;
# simple example removing entry "foo"
my $cpio = Archive::Cpio->new;
$cpio->read($file);
$cpio->remove('foo');
$cio->write($file);
# more complex example, filtering on the fly
my $cpio = Archive::Cpio->new;
$cpio->read_with_handler(\*STDIN,
sub {
my ($e) = @_;
if ($e->name ne 'foo') {
$cpio->write_one(\*STDOUT, $e);
}
});
$cpio->write_trailer(\*STDOUT);
DESCRIPTION¶
Archive::Cpio provides a few functions to read and write cpio files.
Archive::Cpio->new()¶
Create an object
$cpio->read($filehandle)¶
Reads the cpio file
$cpio->write($filehandle)¶
Writes the entries and the trailer
$cpio->remove(@filenames)¶
Removes any entries with names matching any of the given filenames from the
in-memory archive
$cpio->get_files([ @filenames ])¶
Returns a list of "Archive::Cpio::File" (after
a "$cpio-"read>)
$cpio->get_file($filename)¶
Returns the "Archive::Cpio::File" matching
"$filename< (after a
"$cpio-"read")
$cpio->add_data($filename, $data, $opthashref)¶
Takes a filename, a scalar full of data and optionally a reference to a hash
with specific options.
Will add a file to the in-memory archive, with name
$filename and content $data.
Specific properties can be set using
$opthashref.
$cpio->read_with_handler($filehandle, $coderef)¶
Calls the handler function on each header. An
"Archive::Cpio::File" is passed as a
parameter
$cpio->write_one($filehandle, $entry)¶
Writes a "Archive::Cpio::File" (beware, a
valid cpio needs a trailer using
"write_trailer")
$cpio->write_trailer($filehandle)¶
Writes the trailer to finish the cpio file
AUTHOR¶
Pascal Rigaux <pixel@mandriva.com>