How To

How To Use The Export Command In Linux Bash

The export command in Linux is used to create environment variables that can be accessed by Bash scripts, commands, and child processes. If you are learning Bash scripting, understanding the export command is very important because it helps you pass values from your terminal to scripts.

In simple words, a normal Bash variable works only inside the current shell. But when you use export, the variable becomes available to other programs or scripts started from that shell. This is useful for automation, Linux administration, development, and cybersecurity scripting.

What Is The Export Command In Linux?

The export command marks a variable as an environment variable. This means the variable can be used by child processes.

Basic syntax:

export VARIABLE_NAME="value"

Example:

export WEBSITE="kalilinuxtutorials.com"

Now you can print the variable:

echo $WEBSITE

Output:

kalilinuxtutorials.com

Difference Between Normal Variable And Exported Variable

A normal Bash variable is available only in the current shell.

Example:

SITE="Kali Linux Tutorials"

Print it:

echo $SITE

This works in the current terminal. But if you run another Bash process or script, it may not be available unless you export it.

Now export the variable:

export SITE="Kali Linux Tutorials"

This makes it available to child processes and scripts.

Using Export Command With Bash Script

Create a Bash script:

nano export-example.sh

Add the following code:

#!/bin/bashecho "Website Name: $SITE"echo "Current User: $USER"echo "Home Directory: $HOME"

Save the file and give execute permission:

chmod +x export-example.sh

Now export the variable:

export SITE="Kali Linux Tutorials"

Run the script:

./export-example.sh

Output:

Website Name: Kali Linux TutorialsCurrent User: kaliHome Directory: /home/kali

This shows that the Bash script can access the exported variable.

How To View Exported Variables

To view all exported environment variables, use:

export

You can also use:

printenv

To check a specific variable:

printenv SITE

Or:

echo $SITE

How To Remove An Exported Variable

To remove a variable, use the unset command:

unset SITE

Now check it again:

echo $SITE

If nothing is displayed, the variable has been removed.

Making Export Variables Permanent

Exported variables are temporary by default. They disappear when you close the terminal. To make them permanent, add them to the .bashrc file:

nano ~/.bashrc

Add this line:

export SITE="Kali Linux Tutorials"

Reload the file:

source ~/.bashrc

Conclusion

The export command in Linux Bash is used to make variables available to scripts and child processes. It is commonly used for setting paths, configuration values, usernames, tool options, and automation variables.

For Bash scripting beginners, learning the export command helps you understand how environment variables work. It also makes your scripts more flexible, reusable, and useful for real-world Linux and cybersecurity tasks.

Cyber Defence

Recent Posts

Kali Linux Commands Cheat Sheet: Complete Quick Reference

This cheat sheet covers the essential Kali Linux commands every pentester and ethical hacker uses…

2 weeks ago

What I Wish I Knew Before Learning Malware Analysis and Reverse Engineering

When I first started learning malware analysis and reverse engineering, I thought the hardest part…

2 weeks ago

git fetch vs git pull: How They Work and When to Use Each

Both git fetch and git pull talk to a remote repository, but they do very different things to your…

4 weeks ago

git cherry-pick Command: Apply Commits from Another Branch

Sometimes the change you need already exists, just on the wrong branch. A hotfix lands…

4 weeks ago

Best Email APIs for Secure Business Email: Why Developers Are Moving Beyond SMTP

Email is still one of the most important communication channels inside modern applications. Password resets,…

4 weeks ago

Nginx Commands in Linux: Start, Stop, Reload, Test, and Log

Nginx is a high-performance web server and reverse proxy trusted by some of the largest…

4 weeks ago