logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Archive::Cpio - module for manipulations of cpio archives

Author

Pascal Rigaux <pixel@mandriva.com> perl v5.36.0 2022-11-19 Archive::Cpio(3pm)

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

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

See Also