Environment variables

Every Termux session starts with a fresh shell and a set of named values it keeps for you. These questions cover reading those values, setting your own, and the one that decides which program runs when you type a name.

4 questions 1 task Read the lesson

Questions

Each one is marked as you go, and the explanation arrives straight after, which is the part worth reading.

4 questions, marked as you go.

1 What does export do to a variable that a plain assignment does not?
2 PATH lists two folders and both contain a program called python. Which one runs when you type python?
3 You set a variable with project=notes, then run bash -c "echo $project" and nothing prints. Why?
4 What is the difference between echo "home is $HOME" and echo 'home is $HOME'?

Tasks

These need your own device. Run the command in Termux, then paste what it printed. The marking looks at what the output means, so spacing, version numbers and ordering do not matter. If you have not installed anything yet, the lesson covers the setup.

Print the environment the shell gives you

This lists every environment variable in the current session, in alphabetical order. Read the names as well as the values.

Run this in Termux On your own device. Nothing on this page executes it. The command runs in your terminal, and this box only reads what you paste back.

printenv | sort
Marking your own work Both halves of this are checked in your browser, with no server involved, so nothing stops you from pasting output you did not run. The tasks are written so that the easiest way to pass one is to actually do it and read the result, which is the whole intention.

All sets Read the lesson