Name

set

Synopsis

set [options] [arg1 arg2 ...]

Description

With no arguments, set prints the values of all variables known to the current shell. Options can be enabled (-option) or disabled (+option). Options also can be set when the shell is invoked, via bash. Arguments are assigned in order to $1, $2, and so on.

Options

-

Turn off -v and -x, and turn off option processing.

--

Used as the last option; -- turns off option processing so that arguments beginning with - are not misinterpreted as options. (For example, you can set $1 to -1.) If no arguments are given after --, unset the positional parameters.

-a

From now on, automatically mark variables for export after defining or changing them.

-b

Report background job status at termination, instead of waiting for next shell prompt.

-e

Exit if a command yields a nonzero exit status.

-f

Do not expand filename metacharacters (e.g., * ? [ ]). Wildcard expansion is sometimes called globbing.

-h

Locate commands as they are defined, and remember them.

-k

Assignment of environment variables (var = value) will take effect regardless of where they appear on the command line. Normally, assignments must precede the command name.

-m

Monitor mode. Enable job control; background jobs executes in a separate process group. -m usually is set automatically.

-n

Read commands, but don’t execute. Useful for checking errors, particularly for shell scripts.

-o [m]

List shell modes, or turn on mode m. Many modes can be set by other options. The modes can be ...

Get Linux in a Nutshell, Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.