MUSICXMLBULK(1) User Commands MUSICXMLBULK(1)
NAME
musicXmlBulk - manual page for musicXmlBulk 1.0
SYNOPSIS
musicXmlBulk [OPTIONS] SCRIPT_NAME_VALUE
DESCRIPTION
The musicXmlBulk script calls one or more processing scripts on any combination of files, directories of files, score names, and score IDs in one go.
In most cases, musicXmlBulk processes the input and formulates calls to the musicXmlProcess script, so many of the rules that apply to musicXmlProcess apply to musicXmlBulk.
SCRIPT_NAME_VALUE: a single script name, or script name wildcard.
The bulk script will call combinations of the following scripts:
db2Ly
db2MusicXml
db2Pdf
ly2Pdf
musicXml2Db
musicXml2Ly
musicXml2Pdf
musicXmlCompress
musicXmlValidate
SCRIPT_NAME_VALUE examples:
musicXml2Db: will execute the musicXml2Db script on each XML file in the input file list.
musicXml2.*: will execute each of the three musicXml2* scripts on each XML file in the input file list.
.* will execute all of the scripts on every eligible value in the input list.
OPTIONS
-f, --input-file
input file
-i, --input-directory
input directory
-o, --output-directory
output directory
Input options:
The input options direct the bulk script which files to process.
Input values can be a single directory (option -i), a list of input values in a file (option -f), or both.
Input directory option:
The script takes a single input directory as an argument.
All .xml, .mxl, .musicxml, and .ly files in the directory are added to the input list.
Input file option:
The input file is a text file that lists input values, one to a line.
Input line values can be any combination of the following:
An input filename
An input directory
An input score name
A comma-separated input score ID or score ID range
Wild cards in input values are not permitted.
Input value processing:
An input filename is added to the input list if it has an .xml, .mxl, .musicxml, or .ly file extension.
If an input line is a directory, all .xml, .mxl, .musicxml, and .ly files in the directory are added to the input list.
Score IDs refer to the primary key ID value in the SCORE table in the MusicXML database.
Valid score ID input is a comma-separated list of numbers or range of numbers.
Example: 2,4,6-10
Any non-numeric item in the file list that does not have a file extension is treated as a score name and is added to the input list.
Input for each script:
Once input processing is finished, the result is an input list of filenames, score names, and/or score IDs.
musicXml* script input: All XML file input (.xml, .mxl, and .musicxml file extensions).
musicXmlCompress script input: All uncompressed XML file input (.xml and .musicxml file extensions).
db2* script input: All score names and score IDs.
Additionally, the filenames of all .xml, .mxl, .musicxml, and .ly files in the input list are truncated by removing the file extension, and the file's basename is treated as a score name. The script then atâ
tempts to process any score in the database having that score name.
ly2Pdf script input: All LilyPond file input (.ly file extension).
Output for each script:
The output directory option is required for all scripts except musicXmlValidate and musicXml2Db.
Verbose output is used for all scripts except musicXmlCompress and musicXmlValidate. Script output is to stderr and can be redirected by the caller.
Output subdirectories:
The output directory passed by the output directory option must exist before the call to musicXmlBulk.
Script output is to a subdirectory of the passed output directory, one subdirectory for each script called.
The subdirectories are:
Script db2Ly: subdirectory db2ly
Script db2MusicXml: subdirectory db2musicxml
Script db2Pdf: subdirectory db2pdf
Script ly2Pdf: subdirectory ly2pdf
Script musicXml2Ly: subdirectory musicxml2ly
Script musicXml2Pdf: subdirectory musicxml2pdf
Script musicXmlCompress: subdirectory xmlcompress
The directory separation is so that multiple script calls that result in the same file type output don't overwrite each other.
Example:
Output directory: musicxml/out
db2MusicXml script output directory: musicxml/out/db2musicxml
Output filenames:
All XML script output is an .xml file, except for musicXmlCompress which outputs an .mxl file.
The XML file in a compressed MXL file has the same basename as the containing MXL file.
The basename of the output file is the basename of the input file.
In the case of db2* scripts, the output file's basename is the score name or the score ID, depending upon which is being processed.
SEE ALSO
The full documentation for musicXmlBulk is maintained as a Texinfo manual. If the info and musicXmlBulk programs are properly installed at your site, the command
info musicXmlBulk
should give you access to the complete manual.
musicXmlBulk 1.0 March 2023 MUSICXMLBULK(1)