new()read($filename)read($filehandle)write($filename)write($filehandle)remove(@filenames)get_file($filename)write_trailer($filehandle)
Archive::Cpio - module for manipulations of cpio archives
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);
Archive::Cpio provides a few functions to read and write cpio files.
new()Create an object
read($filename)
read($filehandle)Reads the cpio file
write($filename)
write($filehandle)Writes the entries and the trailer
remove(@filenames)Removes any entries with names matching any of the given filenames from the in-memory archive
Returns a list of Archive::Cpio::File (after a $cpio-read>)
get_file($filename)Returns the Archive::Cpio::File matching $filename< (after a $cpio-read)
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.
Calls the handler function on each header. An Archive::Cpio::File is passed as a parameter
Writes a Archive::Cpio::File (beware, a valid cpio needs a trailer using write_trailer)
write_trailer($filehandle)Writes the trailer to finish the cpio file
Pascal Rigaux <pixel@mandriva.com>