Scroll to navigation

cueprint(1) General Commands Manual cueprint(1)


cueprint - report disc and track information from a CUE or TOC file


cueprint [ { -i format | --input-format=format } { -n number | --track-number=number } { -d template | --disc-template=template } { -t template | --track-template=template } ] [ file ... ]
cueprint -h | --help
cueprint -V | --version


cueprint reports disc and track information from CUE and TOC files, which are typically created by compact disc ripping software.

By default, cueprint reports a default set of disc information, and a default set of information for each track on the disc. With options, the report can be restricted to a specific track, and the presentation of the disc and track information can be extensively customized using printf(3)-style format strings (referred to here as ‘templates’ to avoid confusion with the concept of file format). All characters in a template are reproduced as-is in the output except for conversions (which begin with ‘%’) and escapes (which begin with ‘\’).

If no filenames are specified, cueprint reads from standard input, and an input format option must be specified. If one or more filenames is provided, but the input format option is not specified, the input format will be guessed based on each file's suffix (e.g., .cue or .toc). This heuristic is case-insensitive.


A conversion has the form ‘%[flags][width][.precision]type’.

flags may be zero or more of the following:

Character Meaning
- left-justify expansion
+ place sign before numbers
‘ ’ (space) place a blank space before a positive number
0 pad numbers with zeroes

width is the minimum field width. precision is the maximum width for strings. type is a single character which specifies the conversion type — apart from %, it is the only mandatory part of the conversion.

The available conversion types are presented in the table below; disc conversion types are presented in the left half of the table, and track conversion types in the right half. Disc template expansion characters are valid for both disc and track templates.

Character Conversion Character Conversion
A album arranger a track arranger
C album composer c track composer
G album genre g track genre
i track ISRC
M album message m track message
N number of tracks n track number
P album performer p track performer
S album songwriter
T album title t track title
U album UPC/EAN u track ISRC (CD-TEXT)

Any other character used as a conversion type expands to itself. This is how a literal percent sign is placed in the template; i.e., ‘%%’ expands to ‘%’.


The recognized escapes are all single characters, and listed in the table below.
Escape Sequence Expansion
\a alert (bell)
\b backspace
\f formfeed
\n newline
\r carriage return
\t horizontal tab
\v vertical tab
\0 null

Any other character used after the ‘\’ in an escape sequence expands to itself. This is how a literal escape character is placed in the template; i.e., ‘\\’ expands to ‘\’.


-d template, --disc-template=template
set disc template (see Conversions )
-h, --help
displays a usage message and exits.
-i format, --input-format=format
sets the expected format of the input file(s) to format, which must be either cue or toc.
-n number, --track-number=number
only print track information for a single track. The default is to print information for all tracks.
-t template, --track-template=template
set track template (see Conversions )
-V , --version
displays version information and exits.


cueprint exits with status zero if it successfully reports information from each input file, and nonzero if there were problems.


To display disc and track information (using the default template for both):

% cueprint album.cue

To print the number of tracks in a CUE file:

% cueprint -d '%N\n' album.cue


Cuetools was written by Svend Sorensen. Branden Robinson contributed fixes and enhancements to the utilities and documentation.


cuebreakpoints(1), cueconvert(1), printf(3)