Which three commands print the current value of the PATH variable to the terminal? (Choose three.)
LPIC-1 Exam 102-500, objective 105. Shells and shell scripting easy
Draft — not checked yet. This question was written from the published exam objectives and cites the clause it comes from, but nobody has yet read it against that clause and signed for it.
It is kept out of search results and out of mock exams until they have. Read the source below before you take the answer as settled.
The options
Choose 3.
Correct echo $PATH
Correct. The shell expands $PATH and echo prints the result.
Not correct export PATH
Wrong. This marks PATH for export, which it already is, and prints nothing. `export -p` with no name would list exported variables.
Correct printenv PATH
Correct. printenv prints the value of the named environment variable, or the whole environment when given no name.
Not correct set PATH
Wrong. In bash, `set` with an argument assigns positional parameters, making $1 the word PATH. It does not display a variable. `set` alone lists all shell variables.
Correct env | grep '^PATH='
Correct. env prints the whole environment as NAME=value lines, and the anchored grep selects the PATH line.
Why
env and printenv show only exported variables; `set` with no arguments shows all shell variables and functions, exported or not. A variable that appears in `set` output but not in `env` output is a plain shell variable that has not been exported, which is the usual reason a program does not see a value you just assigned.
Where this comes from
- Cited
- LPI exam objective 105.1
- What it says
- Inspect environment variables with env, printenv and set.
Practise this
Reading one question is not practice. The trainer will draw a set from objective 105 and space the ones you get wrong.