next up previous contents index
Next: labrerun Up: The Current Tools Previous: labsetup   Contents   Index

labrun

Purpose:

Tool for running benchmarking or other non-interactive tests

Usage:

labrun [<option>] ... <program> [<argument>] ...

Options:
-a, --autocvs
automatically 'commit' and 'update' CVS if necessary
-b, --batch
run in background
-C, --cvs=<DIRS>
check CVS in <DIRS> (colon-separated lists and multiple entries are allowed) (default: '.')
--nocvs
do not check CVS
-c, --comment=<TAG>
specifies a tag that will be recorded in the .log file. The format of <TAG> is:
[ <LABEL> = ] <STRING>
Inside the <STRING> the following expressions are possible:
$<ENVVAR> will be replaced by shell variable <ENVVAR>,
@<FILE> will be replaced by file <FILE>,
`<COMMAND>` will be replaced by output of <COMMAND>.
% will be replaced by the output file's name

Each of the first three statements may be followed by a modifier:
:<PATTERN>
If the regular expression <PATTERN> contains parentheses, only the match corresponding to the parentheses will be taken. Otherwise the first word after the regular expression will be taken. The <PATTERN> may not contain spaces. Use \s instead. Some documentation for regular expressions is given in Section [*]. If <STRING> begins with 0x, the number following this will be converted from hexidecimal to decimal.

Examples:
OS=`uname -srv`
Processor Speed=@/proc/cpuinfo:cpu.MHz MHz
Processor Name=It's a @/proc/cpuinfo:model.name[\s:]+(.*)
Solution=@%:final.value

-d, --date=<DATE>
use the CVS versions current on the given date (<DATE> should be in a format understandable by CVS)
--keep
keep old files (in conjunction with --date)
-e, --env=<ENV>
record the value of environment variable <ENV> (will be restored when using labrerun.)
-h, --help
print a help message
--help-comment
print help message for formulating comments
-i, --info
just give environment info (and evaluate --comment switches)
-l, --log=<DIR>
where to put log files (default: './lab_log/')
-n, --name=<TAG>
name to use instead of program name in file names
-1, --one
just produce one .log file with different sections
-t, --tag=<TAG>
use <TAG> instead date-time stamp in file names
-v, --verbose
verbose (multiple -v increases verbosity)
--version
print version information
-x, --exec=<DIR>
where to execute program (default: '.')
--nolabrc
do not read ~/.labrc and ./labrc
With @FILE or @ FILE (some) command-line options are read from FILE (see section [*]).

As mentioned in Section [*], the keyword NEX (for ``new experiment'') can be used in the command line to indicate that what follows is the input for a new experiment. For an example of this, see Section [*].

Result:

Files <NAME>-<TAG>.log and <NAME>-<TAG>.out will be produced in the log directory (unless the --one option is used). If there was some output to standard error, a file <NAME>-<TAG>.err will also result. For each of the .out, .log and .err files created, a link will be created in the log directory by the name of current.<ext>.

Examples:


next up previous contents index
Next: labrerun Up: The Current Tools Previous: labsetup   Contents   Index
Tobias Polzin 2003-05-30