ml-initdb.py
------------
-Initialize database and import genres list. Doesn't really needed as
+Usage::
+
+ ml-initdb.py [-d]
+
+Options::
+
+ -d, --database database Open this database by pathname/db uri
+
+Initialize database and import genres list. Isn’t really needed as
the next script does all that too.
Usage::
- ml-import.py [file.inpx ...]
+ ml-import.py [-d] [file.inpx ...]
+
+Options::
+
+ -d, --database database Open this database by pathname/db uri
Initialize database, import genres list and import a list of INPX files
-listed in the command line. On subsequent runs doesn't destroy DB or
+listed in the command line. On subsequent runs doesn’t destroy DB or
reimport genres; it also skips already import books but import new ones.
Usage::
- ml-search.py [-i] [-I] [-t] [-s] [-f] ...
+ ml-search.py [-d] [-i] [-I] [-t] [-s] [-f] [-v] [-c] ...
Search through the database and display results. Currently can only
search authors by name.
Global options::
- -i, --ignore-case ignore case (default is to guess)
- -I, --case-sensitive don't ignore case
- -t, --start search type: substring at the start
- (this is the default)
- -s, --substring search type: substring anywhere
- -f, --full search type: match the full string
+ -d, --database database Open this database by pathname/db uri
+ -i, --ignore-case ignore case (default is to guess)
+ -I, --case-sensitive don’t ignore case
+ -t, --start search type: substring at the start
+ (this is the default)
+ -s, --substring search type: substring anywhere
+ -f, --full search type: match the full string
+ -c, --count Output count of found objects
+ -v, --verbose Output more details about found objects;
+ repeat for even more details
Options ``-i/-I`` cannot be used together as they are the opposite. In
case none of them are used the program guesses case-sensitivity by
Usage::
- ml-search.py [-i/-I] [-t/-s/-f] author [-s surname] [-n name] [-m misc-name] [fullname]
+ ml-search.py author [-s surname] [-n name] [-m misc-name] [--id id] [fullname]
Search and print a list of authors by surname/name/misc name/full name.
-s, --surname surname Search by surname
-n, --name name Search by name
-m, --misc-name misc. name Search by misc. name
+ --id id Search by database id
Example::
ml-search.py -i author -s duck -n mack
-Search and print a list of authors whose surname starts with "duck", and
+Search and print a list of authors whose surname starts with "duck" and
name starts with "mack", case insensitive.
-Book search
-^^^^^^^^^^^
+With one option `-v` it also prints database id.
+
+
+Book searching and downloading
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Usage::
- ml-search.py [-i/-I] [-t/-s/-f] books [-t title] [-s series] [-a archive] [-f file] [-d]
+ ml-search.py books [-t title] [-s series] [-a archive] [-f file] [-p path] [--get] [--get-many N] [--id id] [--surname name] [--name name] [--misc-name name] [--fullname name] [--aid aid] [-e ext] [--eid eid] [--gname name] [--gtitle title] [--gid gid] [-l lang] [--lid lid]
Search and print a list of books by title, series, archive or file name.
-s, --series series Search by series
-a, --archive archive Search by archive (zip file)
-f, --file file Search by file name (without extension)
- -d, --details Output more details about books;
- repeat for even more details
+ -p, --path path Path to the directory with the library
+ archives
+ --get Download exactly one book
+ --get-many N Download at most this many books
+ --id id Search by database id
+ --surname surname Search by author’s surname
+ --name name Search by author’s name
+ --misc-name misc. name Search by author’s misc. name
+ --fullname name Search by author’s full name
+ --aid aid Search by author’s id
+ -e, --ext ext Search by file extension
+ --eid eid Search by extension’s id
+ --gname name Search by genre’s name
+ --gtitle title Search by genre’s title
+ --gid gid Search by genre’s id
+ -l, --lang lang Search by language
+ --lid lid Search by language’s id
By default the program prints only titles of the found book. With one
-option `-d` it also prints the list of authors and genres, and also
-series the book belongs to (if any) and the serial number of the book in
-the series. With two options `-d` (`-d -d` or simply `-dd`) it also
-prints the file date, language and file extension.
+option `-v` it also prints database id, the list of authors and genres,
+and also series the book belongs to (if any) and the serial number of
+the book in the series. With two options `-v` (`-v -v` or simply `-vv`)
+it also prints the file date and language. With three `-v` it prints
+archive name, file name, extension and size, and flag if the book is
+marked to be deleted.
+
+Option `-p` provides the path to the directory with the library
+archives. By default the path is extracted from `m_librarian.conf`,
+section `[library]`, key `path`::
+
+ [library]
+ path = /var/lib/archives
+
+The option is useful for multiple databases (global option `-d`).
+
+Option `--get` allows to download a book from the library to a local
+file. The option allows to download exactly one book. The simplest way
+to use it is via option `--id`. The file is downloaded into the current
+directory with the name from the library.
+
+Configuration key
+
+| [download]
+| format = %a/%s/%n %t
+
+allows to set format for the download file pathname. Default format is
+`%f`, i.e. just filename. Other format specifiers are::
+
+ %a - author (one of if many)
+ %e - file extension
+ %f - file name in archive
+ %G - genre (one of if many), name
+ %g - genre (one of if many), title
+ %l - language
+ %n - series number (or 0)
+ %s - series
+ %t - title
+
+Format must not end in directory separator (`/` or `\\`). If specifier
+`%e` (extension) is not found in the format it is appended
+unconditionally with a dot. That is, format `%f` is equivalent to
+`%f.%e`.
+
+Option `--get-many N` allows to download many books (at most N, where N
+is an integer). Options `--get-many N` and `--get` are, of course,
+mutually incompatible.
+
Extension search
^^^^^^^^^^^^^^^^
Usage::
- ml-search.py [-i/-I] [-t/-s/-f] ext [name]
+ ml-search.py ext [name] [--id id]
+
+Options::
+
+ --id id Search by database id
Search and print a list of extensions by name.
+With one option `-v` it also prints database id.
+
+
Genres search
^^^^^^^^^^^^^
Usage::
- ml-search.py [-i/-I] [-t/-s/-f] genres [-n name] [-t title]
+ ml-search.py genres [-n name] [-t title] [--id id]
Search and print a list of genres by name and title.
-n, --name name Search by name
-t, --title title Search by title
+ --id id Search by database id
+
+With one option `-v` it also prints database id.
+
Language search
^^^^^^^^^^^^^^^
Usage::
- ml-search.py [-i/-I] [-t/-s/-f] lang [name]
+ ml-search.py lang [name] [--id id]
Search and print a list of languages by name.
+Options::
+
+ --id id Search by database id
+
+With one option `-v` it also prints database id.
+
.. vim: set tw=72 :