adplugdb - AdPlug database maintenance utility
adplugdb [OPTION]... COMMAND [ARGUMENT]...
adplugdb maintains database files in AdPlug database format. It can
add,
list and
remove records within a central database,
or
merge a set of databases together into one single database.
adplugdb always operates on a central database file. The location of this
database file is determined by first checking if the user has a home
directory. If a home directory is present, the database file will be located
in
~/.adplug/adplug.db. If a home directory is not present, a database
file
adplug.db will be looked for in the current working directory.
A system-wide database file can be used instead, by specifying the
-s
commandline option. The system-wide database file is located in
/usr/local/com/adplug/adplug.db and may only be manipulated as the
superuser. An arbitrary database file might be used as well, by specifying the
-d commandline parameter. Only one database file may be manipulated at
a time.
adplugdb returns with a successful exit status (
0 on most systems)
on successful operation. An unsuccessful exit status (
1 on most
systems) is returned otherwise.
Commands control the main operation mode of
adplugdb. Commands can have a
number of arguments. Only one command may be specified at a time.
- add
- This command takes a list of filenames, separated by
spaces, as arguments. Each file is examined and a record is added to the
database if the file is supported by AdPlug. By default, the record will
be of type Plain, unless the -t commandline option is
specified (see below). The default comment entry is the specified
filename. If a record for a file is already in the database, it will be
replaced by the new record.
- list
- This command takes an optional list of filenames or keys,
separated by spaces, as arguments. Each file is examined and the
corresponding record is looked up from the database and displayed on
stdout, in a human-readable form. If no arguments are given, all
records from the database are displayed.
- remove
- This command takes a list of filenames or keys, separated
by spaces, as arguments. Each file is examined and the corresponding
record is removed from the database.
- merge
- This command takes a list of database filenames, separated
by spaces, as arguments. Each database file is loaded and the contents are
merged and written to the central database file. The database files are
processed in the order they are specified on the commandline. Records from
databases that were specified earlier take precedence over records from
databases that were specified later. Records from the central database
take precedence over all other records. This means that only additional
records from the other databases will be added to the central database and
if a record is found that is not already in the central database, the
version from the earliest specified database that contains this record
will be taken. In no way will records ever be overwritten in the central
database.
The order of the option commandline parameters is not important.
- -d <file>
- Specify an arbitrary file to use as the central
database.
- -s
- Use the system-wide database file as the central database.
This option is only present if adplugdb was compiled with
system-wide database file support.
- -t <type>
- Specify a record type to be used as the type for all newly
added records. Each record needs a special type to be useful to AdPlug's
players. The commandline help, displayed using the -h commandline
option, presents a list of types that may be specified.
- -c
- Prompt for record comment. If this option is given, the
user will be prompted and asked for each newly added record's
comment.
- -k
- Specify keys instead of filenames. If this option is given,
all command arguments that normally are filenames are expected to be
record keys instead. Each record in the database has a unique identifying
key, generated from the corresponding file's contents. To manipulate a
record entry, you either must have the exact same file and specify its
name, or you specify the record's key, using this option. Keys are
specified the same way they are displayed using the list command,
as CRC16:CRC32 value in hexadecimal format.
- -q, --quiet
- Be more quiet.
- -v, --verbose
- Be more verbose.
- -h, --help
- Show summary of commandline commands, arguments and
options.
- -V, --version
- Show version and author information of the program.
Simon Peter <
[email protected]>