|yaz-marcdump [-i format] [-o format] [-f from] [-t to] [-l spec] [-c cfile] [-s prefix] [-C size] [-n] [-p] [-v] [-V] [file...]|
yaz-marcdump reads MARC records from one or more files. It parses each record and supports output in line-format, ISO2709, [blue]MARCXML, [blue]MARC-in-JSON, [blue]MarcXchange as well as Hex output.
This utility parses records ISO2709(raw MARC), line format, MARC-in-JSON format as well as XML if that is structured as MARCXML/MarcXchange.
MARC-in-JSON encoding/decoding is supported in YAZ 5.0.5 and later.
As of YAZ 2.1.18, OAI-MARC is no longer supported. OAI-MARC is deprecated. Use MARCXML instead.
By default, each record is written to standard output in a line format with newline for each field, $x for each subfield x. The output format may be changed with option -o,
yaz-marcdump can also be requested to perform character set conversion of each record.
-i formatSpecifies input format. Must be one of marcxml, marc (ISO2709), marcxchange (ISO25577), line (line mode MARC), turbomarc (Turbo MARC), or json (MARC-in-JSON).
-o formatSpecifies output format. Must be one of marcxml, marc (ISO2709), marcxchange (ISO25577), line (line mode MARC), turbomarc (Turbo MARC), or json (MARC-in-JSON).
-f fromSpecify the character set of the input MARC record. Should be used in conjunction with option -t. Refer to the yaz-iconv man page for supported character sets.
-t toSpecify the character set of the output. Should be used in conjunction with option -f. Refer to the yaz-iconv man page for supported character sets.
-l leaderspecSpecify a simple modification string for MARC leader. The leaderspec is a list of pos=value pairs, where pos is an integer offset (0 - 23) for leader. Value is either a quoted string or an integer (character value in decimal). Pairs are comma separated. For example, to set leader at offset 9 to a, use 9=a.
-s prefixWrites a chunk of records to a separate file with prefix given, i.e. splits a record batch into files with only at most "chunk" ISO2709 records per file. By default chunk is 1 (one record per file). See option -C.
-C chunksizeSpecifies chunk size; to be used conjunction with option -s.
-pMakes yaz-marcdump print record number and input file offset of each record read.
-nMARC output is omitted so that MARC input is only checked.
-vWrites more information about the parsing process. Useful if you have ill-formatted ISO2709 records as input.
-VPrints YAZ version.
The following command converts MARC21/USMARC in MARC-8 encoding to MARC21/USMARC in UTF-8 encoding. Leader offset 9 is set to a. Both input and output records are ISO2709 encoded.
yaz-marcdump -f MARC-8 -t UTF-8 -o marc -l 9=97 marc21.raw >marc21.utf8.raw
The same records may be converted to MARCXML instead in UTF-8:
yaz-marcdump -f MARC-8 -t UTF-8 -o marcxml marc21.raw >marcxml.xml
Turbo MARC is a compact XML notation with same semantics as MARCXML, but which allows for faster processing via XSLT. In order to generate Turbo MARC records encoded in UTF-8 from MARC21 (ISO), one could use:
yaz-marcdump -f MARC8 -t UTF8 -o turbomarc -i marc marc21.raw >out.xml
1. MARCXML http://www.loc.gov/standards/marcxml/ 2. MARC-in-JSON http://dilettantes.code4lib.org/blog/2010/09/a-proposal-to-serialize-marc-in-json/ 3. MarcXchange http://www.loc.gov/standards/iso25577/
|YAZ 5.15.1||YAZ-MARCDUMP (1)||11/12/2015|