Getting help

Although the refdb command-line programs seem intimidating to many people used to graphical user interfaces, they're not as arcane as you may fear. Help is available with a few keystrokes. Now that refdbc waits for your commands, how can you find out what commands are available? What do you shout when you fear to drown? You'll be yelling "help" (if your audience speaks English, that is), and this is what works well with refdbc too. The uncommunicative among us can use a question mark "?" instead, although I wouldn't recommend this when you're about to drown. With refdbc you'll see something like:

refdbc: help
This is a command overview. To get specific information about a command, run this command with the -h option.
help                    Display this text.
?                       Synonym for `help'.
quit                    Quit refdbc.
addref                  Add references to the database.
deleteref               Delete references from the database.
getas                   Get a list of series editors.
getau                   Get a list of authors.
geted                   Get a list of editors.
getkw                   Get a list of keywords.
getjf                   Get a list of journal names (full).
getjo                   Get a list of journal names (abbrev).
getj1                   Get a list of journal names (custom abbrev1).
getj2                   Get a list of journal names (custom abbrev2).
getref                  Get a list of references.
listdb                  List databases.
liststyle               List bibliography styles.
pickref                 Add references to your personal interest list.
selectdb                Select a database.
set                     Set new value of config variable.
updateref               Update references in the database.
verbose                 Toggle verbose mode.
whichdb                 Show current database.

The left column shows the names of the available commands, while the right column shows a brief command description.

Most of the commands need some arguments in order to make sense. As the help output above said, running any of the available commands with the -h option will display a short message about the purpose and the syntax of the command. The command will not run, so it is safe to play around with this option. Just to get a feel for this help system, look up how you would list available databases. You set a default database in your configuration file, but maybe there are more databases available (not all of them are necessarily refdb databases; your administrator can tell you). As you can see above, you'd use the listdb command. To see how it works, just type

refdbc: listdb -h
Lists the names of the available databases. If an argument is given as a SQL regular expression, only the matching databases are shown.
Syntax: listdb [-h] [SQL-regexp]
Options: -h           prints this mini-help
         All other arguments are interpreted as an SQL regular expression.

This is a fairly simple command that takes just one argument: A SQL regular expression to specify a group of databases. If you never had the pleasure to get in touch with regular expressions: they are somewhat like the "wildcards" you may know from command shells, but more powerful. But this is not the point here. The square brackets around the argument tell you that the argument is optional, that is you can run the command without the argument if you wish. If you leave out the argument, you do not restrict the search to a certain pattern, so the command will return all database names.

This is how quite a lot of the refdbc commands work. Of course there are more complicated ones, and you'll be introduced to some of these below.