OPERON(1)

NAME
operon - command line music tagger

SYNOPSIS
operon [--version] [--help] [-v | --verbose] <command> [<argument>...]
operon help <command>

OPTIONS

-h, --help
    Display help and exit

--version
    Print the program version

-v, --verbose
    Verbose mode

COMMAND-OVERVIEW

  Edit Tags
add         Add a tag value
remove      Remove a tag value
set         Set a tag and remove existing values
clear       Remove tags
copy        Copy tags from one file to another
edit        Edit tags in a text editor
fill        Fill tags based on the file path

  Show file metadata
list        List tags
info        List file information
print       Print tags based on the given pattern

  Edit Embedded Images
image-extract    Extract embedded images
image-set        Set embedded image
image-clear      Remove embedded images

  Miscellaneous
tags        List all common tags
help        Display help information

EDIT TAGS

  add

Add a new tag <tag> with the value <value> to all files.

operon add [-h] <tag> <value> <file>...

-h, --help
    Display help and exit

Example:
    operon add artist 'The Beatles' song1.ogg song2.ogg

  remove

Remove all values from the tag <tag> that match either <value> or the regular expression <pattern> from all files.

operon remove [-h] [--dry-run] <tag> (-e <pattern> | <value>) <file>...

-h, --help
    Display help and exit

--dry-run
    Print the results without changing any files

-e,--regexp <regexp>
    Remove all tag values that match the given regular expression

Example:
    operon remove artist 'The Beatles' song.ogg

  set

Replace all values of the tag <tag> by <value> in all files.

operon set [-h] [--dry-run] <tag> <value> <file>...

-h, --help
    Display help and exit

--dry-run
    Print the results without changing any files

Example:
    operon set artist 'The Beatles' song.ogg

  clear

Remove all tags that match <tag> or the regular expression <pattern> from all files. If --all is specified, all known tags will be removed.

operon clear [-h] [--dry-run] (-a | -e <pattern> | <tag>) <file>...

-h, --help
    Display help and exit

--dry-run
    Print the results without changing any files

-a, --all
    Remove all tags

-e,--regexp <regexp>
    Remove all tags that match the given regular expression

Example:
    operon clear -a song.ogg

    operon clear -e 'musicbrainz_.*' song.ogg

    operon clear date song.ogg

  copy

Copy all tags from the file <source> to <dest>. All tags in <dest> will be preserved. In case the destination format doesn't support setting a tag from source, no tags will be copied. To ignore tags that aren't supported by the destination format pass --ignore-errors.

operon copy [-h] [--dry-run] [--ignore-errors] <source> <dest>

-h, --help
    Display help and exit

--dry-run
    Print the results without changing any files

--ignore-errors
    Skip tags which the target file does not support

Example:
    operon copy song.flac song.ogg

  edit

Shows all tags in a text editor and will apply any changes made to the text to the tags. operon will use the editor specified in the VISUAL or EDITOR environment variables and if those are not set fall back to 'nano'.

operon edit [-h] [--dry-run] <file>

-h, --help
    Display help and exit

--dry-run
    Print the results without changing any files

Example:
    VISUAL=vi operon edit song.flac

  fill

Fill tags based one file paths and a given pattern.

operon fill [-h] [--dry-run] <pattern> <file>...

-h, --help
    show this help message and exit

--dry-run
    show changes, don't apply them

Example:
    operon fill --dry-run "<tracknumber>. <title>" "01. Was Ist Ist.flac"

SHOW FILE METADATA

  list

Lists all tags, values and a description of each tag in a table.

operon list [-h] [-a] [-t] [-c <c1>,<c2>...] <file>

-h, --help
    Display help and exit

-a, --all
    Also list programmatic tags

-t, --terse
    Output is terse and suitable for script processing

-c, --columns <name>,...
    Defines which columns should be printed and in which order

Example:
    operon list -a song.flac

    operon list -t -c tag,value song.ogg

  info

Lists non-tag metadata like length, size and format.

operon info [-h] [-t] [-c <c1>,<c2>...] <file>

-h, --help
    Display help and exit

-t, --terse
    Output is terse and suitable for script processing

-c, --columns <name>,...
    Defines which columns should be printed and in which order

Example:
    operon info a.ogg

  print

Prints information per file built from tag values. The pattern can be customized by passing a pattern string (See quodlibet(1) for the pattern format)

operon print [-h] [-p <pattern>] <file>...

-h, --help
    Display help and exit

-p,--pattern <pattern>
    Use a custom pattern

Example:
    operon print -p "<album> - <artist>" a.ogg

EDIT EMBEDDED IMAGES

  image-extract

Extract all embedded images to the current working directory or the specified destination directory.

operon image-extract [-h] [--dry-run] [--primary] [-d <destination>] <file>...

-h, --help
    Display help and exit

--dry-run
    Print the found images and resulting file paths but don't save them

--primary
    Only extract the primary images for each file

-d,--destination <destination>
    Save all images to the specified destination

Example:
    operon image-extract asong.mp3 anotherone.ogg

  image-set

Set the provided image as primary embedded image and remove all other embedded images.

operon image-set <image-file> <file>...

-h, --help
    Display help and exit

Example:
    operon image-set cover.jpg song.mp3

  image-clear

Remove all embedded images from all specified files.

operon image-clear <file>...

-h, --help
    Display help and exit

Example:
    operon image-clear song.mp3

COMMANDS

  help

operon help [<command>]

Example:
    operon help list

SEE ALSO
regex(7)
exfalso(1)
quodlibet(1)