Catmandu::Exporter::MARC - Exporter for MARC records


  # Convert MARC to MARC
  $ catmandu convert MARC to MARC < /foo/bar.mrc > /foo/output.mrc

  # Add fixes
  $ catmandu convert MARC to MARC --fix myfixes.txt < /foo/bar.mrc > /foo/output.mrc

  # Convert on format to another format
  $ catmandu convert MARC --type ISO to MARC --type ALEPHSEQ < /foo/bar.mrc > /foo/bar.aleph


Catmandu::Exporter::MARC is a Catmandu::Exporter to serialize (write) MARC records to a file or the standard output.



Write output to a local file given by its path or file handle. Alternatively a scalar reference can be passed to write to a string and a code reference can be used to write to a callback function.


Write the output to an IO::Handle. If not specified, Catmandu::Util::io is used to create the output handle from the file argument or by using STDOUT.


An ARRAY of one or more fixes or file scripts to be applied to exported items.


The MARC format to export. The following MARC exporters are available:

  ISO: L<Catmandu::Exporter::MARC::ISO> (default) - a strict ISO 2709 exporter
  ALEPHSEQ: L<Catmandu::Exporter::MARC::ALEPHSEQ> - an exporter for Ex Libris Aleph sequential files
  Line: L<Catmandu::Exporter::MARC::Line> - an exporter for Index Data's MARC Line format
  MARCMaker: L<Catmandu::Exporter::MARC::MARCMaker> - an exporter for MARCMaker/MARCBreaker records
  MiJ: L<Catmandu::Exporter::MARC::MiJ> (MARC in JSON) - an export for the MARC-in-JSON format
  XML: L<Catmandu::Exporter::MARC::XML> - an exporter for the MARC XML format

If set, then any errors when parsing MARC output will be skipped and ignored. Use the debug setting of catmandu to view all error messages:

  $ catmandu -D convert MARC to MARC --skip_errors 1 --fix myfixes.txt < /foo/bar.mrc

Every MARC importer can have its own options. Check the documentation of the specific importer.