atf-sh
[-s
shell] —
interpreter for shell-based test programs
atf-sh
is an interpreter that runs the test program
given in script after loading the
atf-sh(3)
library.
atf-sh
is not a real interpreter though:
it is just a wrapper around the system-wide shell defined by
ATF_SHELL. atf-sh
executes the
interpreter, loads the
atf-sh(3)
library and then runs the script. You must consider
atf-sh
to be a POSIX shell by default and thus
should not use any non-standard extensions.
The following options are available:
-s
shell
- Specifies the shell to use instead of the value provided by
ATF_SHELL.
- ATF_LIBEXECDIR
- Overrides the builtin directory where
atf-sh
is
located. Should not be overridden other than for testing purposes.
- ATF_PKGDATADIR
- Overrides the builtin directory where
libatf-sh.subr is located. Should not be
overridden other than for testing purposes.
- ATF_SHELL
- Path to the system shell to be used in the generated scripts. Scripts must
not rely on this variable being set to select a specific interpreter.
Scripts using
atf-sh(3)
should start with:
Alternatively, if you want to explicitly choose a shell
interpreter, you cannot rely on
env(1) to
find atf-sh
. Instead, you have to hardcode the path
to atf-sh
in the script and then use the
-s
option afterwards as a single
parameter:
#! /path/to/bin/atf-sh -s/bin/bash