Environment variables are named values stored in the shell environment. You can set a variable by typing VAR=value. This variable is local to the current shell session. To make it available to programs or child shells, you must export it using 'export VAR'. Once exported, the variable is passed down to child processes. You can access the value by prefixing the variable name with a dollar sign, like $VAR. If you try to use a variable before setting it, it will be empty. When the shell session ends, the environment variables are cleared unless saved in configuration files.