]> git.phdru.name Git - m_librarian.git/blob - docs/command_line.rst
Document searching by database id
[m_librarian.git] / docs / command_line.rst
1
2 Command-line scripts
3 ====================
4
5
6 .. contents::
7    :local:
8
9
10 ml-initdb.py
11 ------------
12
13 Initialize database and import genres list. Isn’t really needed as
14 the next script does all that too.
15
16
17 ml-import.py
18 ------------
19
20 Usage::
21
22     ml-import.py [file.inpx ...]
23
24 Initialize database, import genres list and import a list of INPX files
25 listed in the command line. On subsequent runs doesn’t destroy DB or
26 reimport genres; it also skips already import books but import new ones.
27
28
29 ml-search.py
30 ------------
31
32 Usage::
33
34     ml-search.py [-i] [-I] [-t] [-s] [-f] [-d] [-c] ...
35
36 Search through the database and display results. Currently can only
37 search authors by name.
38
39 Global options::
40
41     -i, --ignore-case     ignore case (default is to guess)
42     -I, --case-sensitive  don’t ignore case
43     -t, --start           search type: substring at the start
44                           (this is the default)
45     -s, --substring       search type: substring anywhere
46     -f, --full            search type: match the full string
47     -d, --details         Output more details about found objects;
48                           repeat for even more details
49     -c, --count           Output count of found objects
50
51 Options ``-i/-I`` cannot be used together as they are the opposite. In
52 case none of them are used the program guesses case-sensitivity by
53 looking at the arguments. If all arguments are lowercase the program
54 performs case-insensitive search. If there are UPPERCASE or MixedCase
55 arguments the program performs case-sensitive search.
56
57 Options ``-t/-s/-f`` define the search type. Search types are:
58
59 * start - search for substring at the start of the search field; for
60   example searching for "duck" returns results for "duck" and "duckling"
61   but not for "McDuck"; this is the default search type.
62 * substring - search for any substring; "duck" => "duck", "duckling",
63   "McDuck" (except for case-sensitive search, of course).
64 * full - search for exact match, compare the entire strings;
65   i.e. searching for "duck" returns results for "duck" but not for
66   "duckling";
67
68
69 Author search
70 ^^^^^^^^^^^^^
71
72 Usage::
73
74     ml-search.py [-i/-I] [-t/-s/-f] author [-s surname] [-n name] [-m misc-name] [fullname]
75
76 Search and print a list of authors by surname/name/misc name/full name.
77
78 Options::
79
80     -s, --surname surname       Search by surname
81     -n, --name name             Search by name
82     -m, --misc-name misc. name  Search by misc. name
83
84 Example::
85
86     ml-search.py -i author -s duck
87
88 Search and print a list of authors whose surname starts with "duck",
89 case insensitive.
90
91 If a few options are given the search is limited with operator AND.
92 Example::
93
94     ml-search.py -i author -s duck -n mack
95
96 Search and print a list of authors whose surname starts with "duck" and
97 name starts with "mack", case insensitive.
98
99 With one option `-d` it also prints database id.
100
101
102 Book search
103 ^^^^^^^^^^^
104
105 Usage::
106
107     ml-search.py [-i/-I] [-t/-s/-f] books [-t title] [-s series] [-a archive] [-f file] [--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]
108
109 Search and print a list of books by title, series, archive or file name.
110
111 Options::
112
113     -t, --title title      Search by title
114     -s, --series series    Search by series
115     -a, --archive archive  Search by archive (zip file)
116     -f, --file file        Search by file name (without extension)
117     --id id                Search by database id
118     --surname surname      Search by author’s surname
119     --name name            Search by author’s name
120     --misc-name misc. name Search by author’s misc. name
121     --fullname name        Search by author’s full name
122     --aid aid              Search by author’s id
123     -e, --ext ext          Search by file extension
124     --eid eid              Search by extension’s id
125     --gname name           Search by genre’s name
126     --gtitle title         Search by genre’s title
127     --gid gid              Search by genre’s id
128     -l, --lang lang        Search by language
129     --lid lid              Search by language’s id
130
131 By default the program prints only titles of the found book. With one
132 option `-d` it also prints database id, the list of authors and genres,
133 and also series the book belongs to (if any) and the serial number of
134 the book in the series. With two options `-d` (`-d -d` or simply `-dd`)
135 it also prints the file date and language. With three `-d` it prints
136 archive name, file name, extension and size, and flag if the book is
137 marked to be deleted.
138
139
140 Extension search
141 ^^^^^^^^^^^^^^^^
142
143 Usage::
144
145     ml-search.py [-i/-I] [-t/-s/-f] ext [name]
146
147 Search and print a list of extensions by name.
148
149 With one option `-d` it also prints database id.
150
151
152 Genres search
153 ^^^^^^^^^^^^^
154
155 Usage::
156
157     ml-search.py [-i/-I] [-t/-s/-f] genres [-n name] [-t title]
158
159 Search and print a list of genres by name and title.
160
161 Options::
162
163     -n, --name name    Search by name
164     -t, --title title  Search by title
165
166 With one option `-d` it also prints database id.
167
168
169 Language search
170 ^^^^^^^^^^^^^^^
171
172 Usage::
173
174     ml-search.py [-i/-I] [-t/-s/-f] lang [name]
175
176 Search and print a list of languages by name.
177
178 With one option `-d` it also prints database id.
179
180 .. vim: set tw=72 :