
Command Line Interface Specification Linux Mac
Online Backup Client version 4.1.x and higher
1. Introduction
These modifications make it possible to access the BackupAgent Client software from the
command line. The following actions will be implemented: backup, delete, dir en restore. These
actions will be described in more detail in the following paragraphs.
For all actions applies that a successful action is indicated by means of exit code 0. In all other
cases a status code of 1 will be used.
2. Configuration
The command line client does not need any configuration for it to function properly. All necessary
information required to complete a given action is supplied via command line options. The
default values for options otherwise configurable via the full BackupAgent client should be such
that these are satisfactory in the majority of installations.
However, to allow the user to modify the values of options that cannot be set via a command line
option, the command line client is able to read default values from a configuration file. When
used, this configuration file is expected to reside in one of the following folders: application
installation location or the config folder in the application installation location.
If the command line client detects a configuration file in one of the aforementioned folders, it will
load and process the contents of this configuration file before processing the command line
options. If an error is found in the configuration file, the command line client will issue an error
message describing which value, setting or option is causing the error and terminate with an exit
value of 1. In addition, the error message will specify the line on which the error was detected
and the full path to the configuration file the error was found in.
1

3. Backup
This action makes it possible to perform a command line backup. The following arguments will
be used:
java -jar cli.jar backup -login <login name> -pass <login>
-key <key> -server <server address> [-uid <unique id>] [-r] –retention:<retention value> file1 file2
…<path to folder or file>
3.1 Arguments explained
-login <login name>
This is the login name of the user. The user name has a minimum length of 6 characters and a
maximum length of 150 characters. The user name must start with an alphanumerical character
and may contain one or more of the following characters: !#$%&()+,-.;@'~[]{}_\` and may include
whitespace. If the login name contains any special characters (any characters that may be
interpreted by the shell such as the pipe character, whitespace, semi-colon, double-colon,
percent and dollar signs, etc…), the login name should be placed within quotes.
-pass <password>
This is the password for the specified login name. The password has a minimum length of 6
characters and a maximum length of 20 characters. If the password contains any special
characters (any characters that may be interpreted by the shell such as the pipe character,
whitespace, semi-colon, double-colon, percent and dollar signs, etc.), the password should be
placed within quotes.
-key <key>
This is the encryption key of the user. The encryption key will be used to encrypt the stored files.
The encryption key has a minimum of 6 characters and a maximum of 40 characters. Only alpha-
numerical characters are allowed.
-server <server address>
2

The network address or domain name of the BackupAgent Server specified
as https://<servername>.
-uid <unique id>
This is an optional unique identification number. When specified, this value will be used instead
of the computer name to identify the files of the user. This allows the user to access the stored
files from different locations. Only alpha-numerical characters, underscore (_) and hyphen (-) are
allowed.
-task <task name>
This is the name of the task that needs to be executed. The actual task definition is read by the
agent from the xml file containing the task definitions1, and this file is expected to reside in one
of the following folders: application installation location, the config folder in the application
installation location or the current directory. If the task definition file cannot be found, the client
must issue a proper error message and terminate with an exit value of 1. This argument is
optional but mutually exclusive when specifying a list of files and/or folders to be backed up.
However, either this option or the list of files and/or folders must be specified
1
The command line client does not offer functionality to create such a task definition. It is
assumed that the actual task definition has been created by the user, either by using a properly
installed version of the OnlineBackupClient software or by manually creating the correct
definition via a text editor. The Task.xml file needs to be placed in the ../CommandLine/store
folder.
-r
When specifying a list of files and/or folders to be backed up, this argument specifies to
recursively backup the contents of a folder. This argument is optional but mutually exclusive with
the -task command line option.
-retention <retention value>
This retention value is an optional value and it defines the numbers of days the data must be
kept. If not specified, the value will be 30.
3

file1 file2 …
Command line error or unknown error
Completed successfully with skipped resources
Completed successfully with not found resources
Completed successfully with not found resources and skipped resources
Completed unsuccessfully with skipped resources
Completed unsuccessfully with not found resources
Completed unsuccessfully with not found resources and skipped resources
This argument specifies a list of files and/or folders to be backed up. Multiple files and/or folders
are separated with any amount of whitespace. It is the user’s responsibility to properly quote any
file or folder name containing embedded whitespace or other special characters. If the optional
-r option is specified, all specified folders will be backed up recursively. The use of relative paths
is allowed and will be treated properly by the agent (this means that the agent will fully resolve
any relative path into the correct absolute path and automatically compress any redundant path
components). This argument is optional but mutually exclusive with the task command line
option. However, either this option or the -task option must be specified.
3.2 Output
As output and when the command progresses, the backup command will print the list of files
backed up on standard output, one line for each file (the full path will be shown). When the
backup completed successfully, it will print ‘backup completed successfully’ and exit with a status
value of 0. If during the backup problems are encountered with files and/or folders which cause
these items to be skipped, an appropriate notification (including the full path) must be printed to
standard error. If an error was encountered during the backup, a detailed error message must
be printed to standard error and the client must exit with an appropriate exit value according to
the following list:
4