rpm2cpio ./packagecloud-test-1.1-1.x86_64.rpm | cpio -idmv
An RPM package is simply a header structure on top of a CPIO archive. The package itself is comprised of four sections: a header with a leading identifier (magic number) that identifies the file as an RPM package, a signature to verify the integrity of the package, the header or ‘tagged’ data containing package information, version numbers, and copyright messaging, and the archive containing the actual program files.
In the example above, we use cpio with the -i flag to extract the files from the archive, -d to create the leading directories where needed, and -m to preserve the file modification times when creating files. The -v flag (verbose) is to list the files processed for the sake of this example.
%A Author
%B Secondary Title (of a Book or Conference Name)
%C Place Published
%D Year
%E Editor /Secondary Author
%F Label
%G Language
%H Translated Author
%I Publisher
%J Journal Name
%K Keywords
%L Call Number
%M Accession Number
%N Number (Issue)
%O Alternate Title
%P Pages
%Q Translated Title
%R DOI
%S Tertiary Title
%T Title
%U URL
%V Volume
%W Database Provider
%X Abstract
%Y Tertiary Author / Translator
%Z Notes
%0 Reference Type
%1 Custom 1
%2 Custom 2
%3 Custom 3
%4 Custom 4
%6 Number of Volumes
%7 Edition
%8 Date
%9 Type of Work
%? Subsidiary Author
%@ ISBN/ISSN
%! Short Title
%# Custom 5
%$ Custom 6
%] Custom 7
%& Section
%( Original Publication
%) Reprint Edition
%* Reviewed Item
%+ Author Address
%^ Caption
%> File Attachments
%< Research Notes
%[ Access Date
%= Custom 8
%~ Name of Database