Archive::Cpio.3pm

Langue: en

Autres versions - même langue

Version: 2007-12-19 (mandriva - 01/05/08)

Section: 3 (Bibliothèques de fonctions)

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($filename)


$cpio->read($filehandle)

Reads the cpio file

$cpio->write($filename)


$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 ])


$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)


$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)


$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)


$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>