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
atf-sh(3)