O'Reilly logo

LPI Linux Certification in a Nutshell, 3rd Edition by James Stanger, Bruno Gomes Pessanha, Stephen Addison Schneiter, Adam Haeder

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Shell variable basics

During execution, bash maintains a set of shell variables that contain information important to the execution of the shell. Most of these variables are set when bash starts, but they can be set manually at any time.

The first shell variable of interest in this topic is called PS1, which simply stands for Prompt String 1. This special variable holds the contents of the command prompt that are displayed when bash is ready to accept commands (there is also a PS2 variable, used when bash needs multiple-line input to complete a command). You can easily display the contents of PS1, or any other shell variable, by using the echo command with the variable name preceded by the $ symbol:

$ echo $PS1
\$

The \$ output tells us that PS1 contains the two characters \ and $. The backslash character tells the shell not to interpret the dollar symbol in any special way (that is, as a metacharacter, described later in this section). A simple dollar sign was the default prompt for sh, but bash offers options to make the prompt much more informative. On your system, the default prompt stored in PS1 is probably something like:

[\u@\h \W]\$

Each of the characters preceded by backslashes has a special meaning to bash, whereas those without backslashes are interpreted literally. In this example, \u is replaced by the username, \h is replaced by the system’s hostname, \W is replaced by the unqualified path (or basename) of the current working directory, and \$ is replaced by a $ character ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required