calibredb - calibredb
calibredb command [options] [arguments]
 
 
calibredb is the command line interface to the calibre
    database. It has several sub-commands, documented below.
calibredb can be used to manipulate either a calibre
    database specified by path or a calibre Content server running either on the
    local machine or over the internet. You can start a calibre Content server
    using either the calibre-server program or in the main calibre
    program click Connect/share  →  Start Content server.
    Since calibredb can make changes to your calibre libraries, you must
    setup authentication on the server first. There are two ways to do that:
  - If you plan to connect only to a server running on the same computer, you
      can simply use the --enable-local-write option of the content
      server, to allow any program, including calibredb, running on the local
      computer to make changes to your calibre data. When running the server
      from the main calibre program, this option is in
      Preferences → Sharing over the
      net → Advanced.
- If you want to enable access over the internet, then you should setup user
      accounts on the server and use the --username and --password
      options to calibredb to give it access. You can setup user
      authentication for calibre-server by using the --enable-auth
      option and using --manage-users to create the user accounts. If you
      are running the server from the main calibre program, use
      Preferences → Sharing over the
      net → Require username/password.
 
 
 
To connect to a running Content server, pass the URL of the server
    to the --with-library option, see the documentation of that option
    for details and examples.
  - remove
- add_format
- remove_format
- show_metadata
- set_metadata
- export
- catalog
  - saved_searches
- add_custom_column
- custom_columns
- remove_custom_column
- set_custom
- restore_database
- check_library
- list_categories
- backup_metadata
- clone
- embed_metadata
- search
 
  - --library-path,
    --with-library
- Path to the calibre library. Default is to use the path stored in the
      settings. You can also connect to a calibre Content server to perform
      actions on remote libraries. To do so use a URL of the form:
      http://hostname:port/#library_id for example,
      http://localhost:8080/#mylibrary. library_id is the library id of
      the library you want to connect to on the Content server. You can use the
      special library_id value of - to get a list of library ids available on
      the server. For details on how to setup access via a Content server, see
      https://manual.calibre-ebook.com/generated/en/calibredb.html.
 
  - --password
- Password for connecting to a calibre Content server. To read the password
      from standard input, use the special value: <stdin>. To read the
      password from a file, use: <f:/path/to/file> (i.e. <f: followed
      by the full path to the file and a trailing >). The angle brackets in
      the above are required, remember to escape them or use quotes for your
      shell.
 
  - --timeout
- The timeout, in seconds, when connecting to a calibre library over the
      network. The default is two minutes.
 
  - --username
- Username for connecting to a calibre Content server
 
캘리버
    데이터베이스에
    등록되어 있는 책들의
    목록을 표시합니다.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --fields,
    -f
- The fields to display when listing books in the database. Should be a
      comma separated list of fields. Available fields: author_sort, authors,
      comments, cover, formats, identifiers, isbn, languages, last_modified,
      pubdate, publisher, rating, series, series_index, size, tags, timestamp,
      title, uuid Default: title,authors. The special field
      "all" can be used to select all fields. In
      addition to the builtin fields above, custom fields are also available as
      *field_name, for example, for a custom field #rating, use the name:
      *rating
 
  - --for-machine
- Generate output in JSON format, which is more suitable for machine
      parsing. Causes the line width and separator options to be ignored.
 
  - --limit
- The maximum number of results to display. Default: all
 
  - --line-width,
    -w
- The maximum width of a single line in the output. Defaults to detecting
      screen size.
 
  - --prefix
- The prefix for all file paths. Default is the absolute path to the library
      folder.
 
  - --search,
    -s
- Filter the results by the search query. For the format of the search
      query, please see the search related documentation in the User Manual.
      Default is to do no filtering.
 
  - --sort-by
- The field by which to sort the results. Available fields: author_sort,
      authors, comments, cover, formats, identifiers, isbn, languages,
      last_modified, pubdate, publisher, rating, series, series_index, size,
      tags, timestamp, title, uuid Default: id
 
calibredb add [options] file1 file2 file3 ...
 
 
Add the specified files as books to the database. You can also
    specify directories, see the directory related options below.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --automerge,
    -m
- If books with similar titles and authors are found, merge the incoming
      formats (files) automatically into existing book records. A value of
      "ignore" means duplicate formats are discarded. A
      value of "overwrite" means duplicate formats in
      the library are overwritten with the newly added files. A value of
      "new_record" means duplicate formats are placed
      into a new book record.
 
  - --duplicates,
    -d
- Add books to database even if they already exist. Comparison is done based
      on book titles and authors. Note that the --automerge option takes
      precedence.
 
  - --languages,
    -l
- 쉼표로 구분된 언어
      목록 (일부 언어
      이름도 인식될 수
      있지만, ISO639 언어 코드를
      사용하는 것이 가장
      좋습니다)
 
폴더에서 추가
폴더에서 책
    추가하는 것을
    제어하는 옵션.
    기본적으로 알려진
    전자책 파일 형식의
    확장자를 가진 파일만
    추가됩니다.
  - --add
- 파일명(전역) 패턴, 이
      패턴과 일치하는
      파일은 알려진 전자책
      파일 유형이 아닌
      경우에도, 폴더에서
      파일 스캔시
      추가됩니다. 여러
      패던에 대해 여러 번
      지정할 수 있습니다.
 
  - --ignore
- 파일명(전역) 패턴, 이
      패턴과 일치하는
      파일은 폴더에서 파일
      스캔시 무시됩니다.
      여러 패턴에 대해
      여러 번 지정할 수
      있습니다. 예: *.pdf는 모든
      pdf 파일을
    무시합니다.
 
Remove the books identified by ids from the database. ids should
    be a comma separated list of id numbers (you can get id numbers by using the
    search command). For example, 23,34,57-85 (when specifying a range, the last
    number in the range is not included).
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb add_format [options] id ebook_file
 
 
Add the e-book in ebook_file to the available formats for the
    logical book identified by id. You can get id by using the search command.
    If the format already exists, it is replaced, unless the do not replace
    option is specified.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb remove_format [options] id fmt
 
 
Remove the format fmt from the logical book identified by id. You
    can get id by using the search command. fmt should be a file extension like
    LRF or TXT or EPUB. If the logical book does not have fmt available, do
    nothing.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb show_metadata [options] id
 
 
Show the metadata stored in the calibre database for the book
    identified by id. id is an id number from the search command.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb set_metadata [options] id [/path/to/metadata.opf]
 
 
Set the metadata stored in the calibre database for the book
    identified by id from the OPF file metadata.opf. id is an id number from the
    search command. You can get a quick feel for the OPF format by using the
    --as-opf switch to the show_metadata command. You can also set the metadata
    of individual fields with the --field option. If you use the --field option,
    there is no need to specify an OPF file.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --field,
    -f
- The field to set. Format is field_name:value, for example: --field
      tags:tag1,tag2. Use --list-fields to get a list of all field names.
      You can specify this option multiple times to set multiple fields. Note:
      For languages you must use the ISO639 language codes (e.g. en for English,
      fr for French and so on). For identifiers, the syntax is --field
      identifiers:isbn:XXXX,doi:YYYYY. For boolean (yes/no) fields use true and
      false or yes and no.
 
  - --list-fields,
    -l
- List the metadata field names that can be used with the --field
      option
 
calibredb export [options] ids
 
 
Export the books specified by ids (a comma separated list) to the
    filesystem. The export operation saves all formats of the book, its
    cover and metadata (in an opf file). You can get id numbers from the search
    command.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --all
- 데이터베이스의 모든
      책을 내보냅니다. ID
      목록은 무시합니다.
 
  - --dont-asciiize
- Have calibre convert all non English characters into English equivalents
      for the file names. This is useful if saving to a legacy filesystem
      without full support for Unicode filenames. Specifying this switch will
      turn this behavior off.
 
  - --dont-save-cover
- 보통, 캘리버는
      표지를 실제 전자책
      파일과 함께 별도의
      파일에 저장합니다.
      Specifying this switch will turn this behavior off.
 
  - --dont-update-metadata
- 캘리버가 캘리버
      서재에 있는 책
      정보를 가져와 저장된
      파일의 책 정보를
      업데이트합니다.
      디스크에 저장하는
      시간이 더 걸리게
      됩니다. Specifying this switch will turn this behavior
      off.
 
  - --dont-write-opf
- 보통, 캘리버는 실제 eBook
      파일과 함께 분리된 OPF
      파일 내에 책 정보를
      기록합니다. Specifying this switch will turn
      this behavior off.
 
  - --formats
- 책마다 저장할 형식의
      목록이며 쉼표로
      구분합니다.
      기본값으로 모든(all)
      이용가능한 형식으로
      저장됩니다.
 
  - --template
- 저장되는 파일의
      파일명과 폴더 구조를
      제어하는
      템플릿입니다.
      기본값은
      "{author_sort}/{title}/{title} -
      {authors}"이고, 제목과
      저자명을 포함하는
      파일명으로 저자별
      하위 폴더에 저장하게
      됩니다. 사용가능한
      필드: {author_sort, authors, id, isbn, languages,
      last_modified, pubdate, publisher, rating, series, series_index, tags,
      timestamp, title}
 
  - --timefmt
- 날짜를 표시하는
      양식. %d - 일, %b - 월, %m -
      월(숫자), %Y - 년도.
      기본값: %b, %Y
 
  - --to-dir
- Export books to the specified directory. Default is .
 
calibredb catalog /path/to/destination.(csv|epub|mobi|xml...) [options]
 
 
Export a catalog in format specified by path/to/destination
    extension. Options control how entries are displayed in the generated
    catalog output. Note that different catalog formats support
    different sets of options. To see the different options, specify the name of
    the output file and then the --help option.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --ids, -i
- Comma-separated list of database IDs to catalog. If declared,
      --search is ignored. Default: all
 
  - --search,
    -s
- Filter the results by the search query. For the format of the search
      query, please see the search-related documentation in the User Manual.
      Default: no filtering
 
  - --catalog-title
- Title of generated catalog used as title in metadata. Default: 'My
      Books' Applies to: AZW3, EPUB, MOBI output formats
 
  - --cross-reference-authors
- Create cross-references in Authors section for books with multiple
      authors. Default: 'False' Applies to: AZW3, EPUB, MOBI
      output formats
 
  - --debug-pipeline
- Save the output from different stages of the conversion pipeline to the
      specified directory. Useful if you are unsure at which stage of the
      conversion process a bug is occurring. Default: 'None'
      Applies to: AZW3, EPUB, MOBI output formats
 
  - --exclude-genre
- Regex describing tags to exclude as genres. Default:
      '[.+]|^+$' excludes bracketed tags, e.g. '[Project
      Gutenberg]', and '+', the default tag for read books.
      Applies to: AZW3, EPUB, MOBI output formats
 
  - --exclusion-rules
- Specifies the rules used to exclude books from the generated catalog. The
      model for an exclusion rule is either ('<rule
      name>','Tags','<comma-separated list of
      tags>') or ('<rule name>','<custom
      column>','<pattern>'). For example:
      (('Archived
      books','#status','Archived'),) will
      exclude a book with a value of 'Archived' in the custom
      column 'status'. When multiple rules are defined, all rules
      will be applied. Default:
      "(('Catalogs','Tags','Catalog'),)"
      Applies to: AZW3, EPUB, MOBI output formats
 
  - --generate-genres
- '장르' 섹션을
      카탈로그에
      포함합니다. 기본값:
      'False' 적용 대상 형식:
      AZW3, EPUB, MOBI 출력 형식
 
  - --generate-series
- '시리즈' 섹션을
      카탈로그에
      포함합니다. 기본값:
      'False' 적용 대상 형식:
      AZW3, EPUB, MOBI 출력 형식
 
  - --generate-titles
- '제목' 섹션을
      카탈로그에
      포함합니다. 기본값:
      'False' 적용 대상 형식:
      AZW3, EPUB, MOBI 출력 형식
 
  - --genre-source-field
- Source field for 'Genres' section. Default:
      '태그' Applies to: AZW3, EPUB, MOBI output
      formats
 
  
  - Custom field containing note text to insert in Description header.
      Default: '' Applies to: AZW3, EPUB, MOBI output formats
 
  - --merge-comments-rule
- #<custom field>:[before|after]:[True|False] specifying: <custom
      field> Custom field containing notes to merge with comments
      [before|after] Placement of notes with respect to comments [True|False] -
      A horizontal rule is inserted between notes and comments Default:
      '::' Applies to: AZW3, EPUB, MOBI output formats
 
  - --output-profile
- Specifies the output profile. In some cases, an output profile is required
      to optimize the catalog for the device. For example,
      'kindle' or 'kindle_dx' creates a structured
      Table of Contents with Sections and Articles. Default:
      'None' Applies to: AZW3, EPUB, MOBI output formats
 
  - --prefix-rules
- Specifies the rules used to include prefixes indicating read books,
      wishlist items and other user-specified prefixes. The model for a prefix
      rule is ('<rule name>','<source
      field>','<pattern>','<prefix>').
      When multiple rules are defined, the first matching rule will be used.
      Default: "(('Read
      books','tags','+','✓'),('Wishlist
      item','tags','Wishlist','×'))"
      Applies to: AZW3, EPUB, MOBI output formats
 
  - --preset
- Use a named preset created with the GUI catalog builder. A preset
      specifies all settings for building a catalog. Default:
      'None' Applies to: AZW3, EPUB, MOBI output formats
 
  - --thumb-width
- Size hint (in inches) for book covers in catalog. Range: 1.0 - 2.0
      Default: '1.0' Applies to: AZW3, EPUB, MOBI output
    formats
 
  - --use-existing-cover
- Replace existing cover when generating the catalog. Default:
      'False' Applies to: AZW3, EPUB, MOBI output formats
 
calibredb saved_searches [options] (list|add|remove)
 
 
Manage the saved searches stored in this database. If you try to
    add a query with a name that already exists, it will be replaced.
Syntax for adding:
calibredb saved_searches add search_name
  search_expression
Syntax for removing:
calibredb saved_searches remove search_name
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb add_custom_column [options] label name datatype
 
 
Create a custom column. label is the machine friendly name of the
    column. Should not contain spaces or colons. name is the human friendly name
    of the column. datatype is one of: bool, comments, composite, datetime,
    enumeration, float, int, rating, series, text
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --display
- A dictionary of options to customize how the data in this column will be
      interpreted. This is a JSON string. For enumeration columns, use
      --display"{\ "enum_values\ ":[\
      "val1\ ", \ "val2\
      "]}" There are many options that can go into the
      display variable.The options by column type are: composite:
      composite_template, composite_sort, make_category,contains_html,
      use_decorations datetime: date_format enumeration: enum_values,
      enum_colors, use_decorations int, float: number_format text: is_names,
      use_decorations The best way to find legal combinations is to create a
      custom column of the appropriate type in the GUI then look at the backup
      OPF for a book (ensure that a new OPF has been created since the column
      was added). You will see the JSON for the
      "display" for the new column in the OPF.
 
  - --is-multiple
- This column stores tag like data (i.e. multiple comma separated values).
      Only applies if datatype is text.
 
calibredb custom_columns [options]
 
 
List available custom columns. Shows column labels and ids.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb remove_custom_column [options] label
 
 
Remove the custom column identified by label. You can see
    available columns with the custom_columns command.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb set_custom [options] column id value
 
 
Set the value of a custom column for the book identified by id.
    You can get a list of ids using the search command. You can get a list of
    custom column names using the custom_columns command.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --append,
    -a
- If the column stores multiple values, append the specified values to the
      existing ones, instead of replacing them.
 
calibredb restore_database [options]
 
 
Restore this database from the metadata stored in OPF files in
    each directory of the calibre library. This is useful if your metadata.db
    file has been corrupted.
WARNING: This command completely regenerates your database. You
    will lose all saved searches, user categories, plugboards, stored per-book
    conversion settings, and custom recipes. Restored metadata will only be as
    accurate as what is found in the OPF files.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --really-do-it,
    -r
- Really do the recovery. The command will not run unless this option is
      specified.
 
calibredb check_library [options]
 
 
Perform some checks on the filesystem representing a library.
    Reports are invalid_titles, extra_titles, invalid_authors, extra_authors,
    missing_formats, extra_formats, extra_files, missing_covers, extra_covers,
    failed_folders
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb list_categories [options]
 
 
Produce a report of the category information in the database. The
    information is the equivalent of what is shown in the Tag browser.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --dialect
- The type of CSV file to produce. Choices: excel, excel-tab, unix
 
  - --item_count,
    -i
- Output only the number of items in a category instead of the counts per
      item within the category
 
  - --width,
    -w
- The maximum width of a single line in the output. Defaults to detecting
      screen size.
 
calibredb backup_metadata [options]
 
 
Backup the metadata stored in the database into individual OPF
    files in each books directory. This normally happens automatically, but you
    can run this command to force re-generation of the OPF files, with the --all
    option.
Note that there is normally no need to do this, as the OPF files
    are backed up automatically, every time metadata is changed.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --all
- Normally, this command only operates on books that have out of date OPF
      files. This option makes it operate on all books.
 
calibredb clone path/to/new/library
 
 
Create a clone of the current library. This creates a new,
    empty library that has all the same custom columns, Virtual libraries and
    other settings as the current library.
The cloned library will contain no books. If you want to create a
    full duplicate, including all books, then simply use your filesystem tools
    to copy the library folder.
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
calibredb embed_metadata [options] book_id
 
 
Update the metadata in the actual book files stored in the calibre
    library from the metadata in the calibre database. Normally, metadata is
    updated only when exporting files from calibre, this command is useful if
    you want the files to be updated in place. Note that different file formats
    support different amounts of metadata. You can use the special value 'all'
    for book_id to update metadata in all books. You can also specify many book
    ids separated by spaces and id ranges separated by hyphens. For example:
    calibredb embed_metadata 1 2 10-15 23
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"
  - --only-formats,
    -f
- Only update metadata in files of the specified format. Specify it multiple
      times for multiple formats. By default, all formats are updated.
 
calibredb search [options] search expression
 
 
Search the library for the specified search term, returning
    a comma separated list of book ids matching the search expression.
    The output format is useful to feed into other commands that accept a list
    of ids as input.
The search expression can be anything from calibre's
    powerful search query language, for example: calibredb search
    author:asimov 'title:"i robot"'
Whenever you pass arguments to calibredb that have spaces in them,
    enclose the arguments in quotation marks. For example: "/some path/with
    spaces"