# Environment Customization

## Before Starting

Consider these important facts:

* Environment variables **are all upper case**.
* To use their values, precede the name with a `$`.

## Initializing Your Environment

Linux utilizes Bash as the default shell and when a session started it reads commands from `~/.bash_profile`.

Environment variables are set in the file `~/.bashrc`.

📝 **Note:** The files `~/.bash_profile` and `.bashrc` are hidden. To list hidden files, type `ls -a`.

## Know the Environment Variables

Here is a list of some common environment variables:

* `$HOME` - Path of your home directory
* `$PATH` - List of directories where the system checks for programs to run
* `$LD_LIBRARY_PATH` - List of directories where the system checks for shared libraries to load
* `$HOSTNAME` - The name of the host, e.g. `tigris.doane.edu`.

📝 **Note:** See the values of all your environment variables by typing `env` on your terminal.

## Working with the Environment Variables

* Display the value of an environment variable using `echo`:

  ```bash
  echo $HOME
  /home/UID
  ```
* Modify the value of environment variables with `export`:

  ```bash
  export PATH=$PATH:/home/UID
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/UID/custom_lib_directory
  ```
* Set a value for environment variables:

  ```bash
  export OMP_NUM_THREADS=12
  ```

  *This command sets the value of the variable called OMP\_NUM\_THREADS (an OpenMP parameter) to 12.*


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doane-ccla.gitbook.io/docs/learning-linux/environment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
