How Set Multiple Env Variables for a Bash Command

I am supposed to set the EC2_HOME and JAVA_HOME variables before running a command (ec2-describe-regions)

How do I do that in one go?

3 Answers

You can one-time set vars for a single command by putting them on the command line before the command:

$ EC2_HOME=/path/to/dir JAVA_HOME=/other/path ec2-describe-regions

Alternately, you can export them in the environment, in which case they'll be set for all future commands:

$ export EC2_HOME=/path/to/dir
$ export JAVA_HOME=/other/path
$ ec2-describe-regions
6

If you want to use the environment variables multiple times in the same session you can use:

export VAR1=value1 VAR2=value2 VARN=valueN

If you want to execute a command with multiple variables without affecting the current bash session, you can use:

VAR1=value1 VAR2=value2 VARN=valueN command arg=1

As other *nix system, you can add function as following in your .bashrc file under your HOME directory.

function startec2(){
    export EC2_HOME=/path/to/dir
    export JAVA_HOME=/other/path 
    ec2-describe-regions
}

Now, you can start your program by the following command:

startec2
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

David Miller

David Miller

Executive Financial & Market Analyst

David Miller brings 15 years of experience in global economics, personal finance strategy, and market dynamics. He specializes in turning complex economic trends into actionable insights for everyday readers.

Share this article
Twitter Facebook Pinterest