If Bash is started with the name rbash, or the --restricted or -r option is supplied at invocation, the shell becomes restricted. A restricted shell is used to set up an environment more controlled than the standard shell. A restricted shell behaves identically to bash with the exception that the following are disallowed or not performed:

* Changing directories with the cd built-in.
* Setting or unsetting the values of the SHELL, PATH, ENV, or BASH_ENV variables.
* Specifying command names containing slashes.
* Specifying a filename containing a slash as an argument to the . built-in command.
* Specifying a filename containing a slash as an argument to the -p option to the hash built-in command.
* Importing function definitions from the shell environment at startup.
* Parsing the value of SHELLOPTS from the shell environment at startup.
* Redirecting output using the ‘>’, ‘>|’, ‘<>’, ‘>&’, ‘&>’, and ‘>>’ redirection operators.
* Using the exec built-in to replace the shell with another command.
* Adding or deleting built-in commands with the -f and -d options to the enable built-in.
* Using the enable built-in command to enable disabled shell built-ins.
* Specifying the -p option to the command built-in.Turning off restricted mode with ‘set +r’ or ‘set +o restricted’.