ODB API offers some command line tools. Most of them are available via single executable called odb. First parameter of the program is the name of the tool/command for example 'compare', 'sql', 'split', after that follow flags and parameters of the specific tool/command.
When executed without any parameters the tool prints out list of available commands:
$ odb Usage: odb <command> [<command's-parameters>] odb help <command> Available commands: compare Compares two ODB files count Counts number of rows ecml Executes ECML script(s) with ODB module imported header Shows header(s) and metadata(s) of file import Imports data from a text file index Creates index of reports for a given file ls Shows file's contents mdset Creates a new file resetting types or values (constants only) of columns. merge Merges rows from files oda2request Creates MARS ARCHIVE request for a given file set Creates a new file setting columns to given values split Splits file according to given template sql Executes SQL statement
More details is available via command 'help' followed by the name of a command, for example to see details of the 'sql' command:
$ odb help sql Executes SQL statement Usage: sql <select-statement> | <script-filename> [-T] Disables printing of column names [-offset <offset>] Start processing file at a given offset [-length <length>] Process only given bytes of data [-N] Do not write NULLs, but proper missing data values [-i <inputfile>] ODB input file [-o <outputfile>] ODB output file [-f default|wide|odb] ODB output format (default is ascii; odb is binary ODB, wide is ascii with bitfields definitions in header) [-delimiter <delim>] Changes the default values' delimiter (TAB by default) delim can be any character or string [--binary] Print bitfields in binary notation [--no_alignment] Do not align columns