Man

Command Section
EFIVAR(8)               FreeBSD System Manager's Manual              EFIVAR(8)

NAME
     efivar - UEFI environment variable interaction

SYNOPSIS
     efivar [-abdDHlLNpRtw] [-n name] [-f file] [--append] [--ascii]
            [--attributes] [--binary] [--delete] [--device-path]
            [--fromfile file] [--guid] [--hex] [--list-guids] [--list]
            [--name name] [--no-name] [--print] [--print-decimal] [--raw-guid]
            [--write]

DESCRIPTION
     This program manages ``Unified Extensible Firmware Interface'' (UEFI)
     environment variables.  UEFI variables have three part: A namespace, a
     name and a value.  The namespace is a GUID that is self assigned by the
     group defining the variables.  The name is a Unicode name for the
     variable.  The value is binary data.  All Unicode data is presented to
     the user as UTF-8.

     The following options are available:

     -n name --name name   Specify the name of the variable to operate on.
                           The name argument is the GUID of the variable,
                           followed by a dash, followed by the UEFI variable
                           name.  The GUID may be in numeric format, or may be
                           one of the well known symbolic name (see
                           --list-guids for a complete list).

     -f file --fromfile file
                           When writing or appending to a variable, take the
                           data for the variable's value from file instead of
                           from the command line.  This flag implies --write
                           unless the --append flag is given.  This behavior
                           is not well understood and is currently
                           unimplemented.

     -a --append           Append the specified value to the UEFI variable
                           rather than replacing it.

     -t attr --attributes attr
                           Specify, in hexadecimal, the attributes for this
                           variable.  See section 7.2 (GetVariable subsection,
                           Related Definitions) of the UEFI Specification for
                           hex values to use.

     -A --ascii            Display the variable data as modified ascii: All
                           printable characters are printed, while unprintable
                           characters are rendered as a two-digit hexadecimal
                           number preceded by a % character.

     -b --binary           Display the variable data as binary data.  Usually
                           will be used with the -N or --no-name flag.  Useful
                           in scripts.

     -D --delete           Delete the specified variable.  May not be used
                           with either the --write or the --append flags.  No
                           value may be specified.

     -d --device --device-path
                           Interpret the variables printed as UEFI device
                           paths and print the UEFI standard string
                           representation.

     -g --guid             flag is specified, guids are converted to names if
                           they are known (and show up in --list-guids -).

     -H --hex              List variable data as a hex dump.

     -L --list-guids       Lists the well known GUIDs.  The names listed here
                           may be used in place of the numeric GUID values.
                           These names will replace the numeric GUID values
                           unless --raw-guid flag is specified.

     -l --list             List all the variables.  If the --print flag is
                           also listed, their values will be displayed.

     -N --no-name          Do not display the variable name.

     -p --print            Print the value of the variable.

     -R --raw-guid         Do not substitute well known names for GUID numeric
                           values in output.

     -w --write            Write (replace) the variable specified with the
                           value specified from standard input.  No command
                           line option to do this is available since UEFI
                           variables are binary structures rather than
                           strings.  echo(1) -n can be used to specify simple
                           strings.

     name                  Display the name environment variable.

COMPATIBILITY
     The efivar program is intended to be compatible (strict superset) with a
     program of the same name included in the Red Hat libefivar package, but
     the -d and --print-decimal flags are not implemented and never will be.

     The -d flag is short for --device-path.

SEE ALSO
     Appendix A of the UEFI specification has the format for GUIDs.  All GUIDs
     ``Globally Unique Identifiers'' have the format described in RFC 4122.

HISTORY
     The efivar utility first appeared in FreeBSD 11.1.

FreeBSD 11.1-RELEASE-p4          May 22, 2017          FreeBSD 11.1-RELEASE-p4
Command Section