簡體   English   中英

如何為 bash 命令設置多個環境變量

[英]How set multiple env variables for a bash command

我應該在運行命令之前設置 EC2_HOME 和 JAVA_HOME 變量(ec2-describe-regions)

我如何一口氣做到這一點?

您可以通過將它們放在命令之前的命令行上一次性設置單個命令的變量:

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

或者,您可以將它們導出到環境中,在這種情況下,將為所有未來的命令設置它們:

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

如果你想在同一個會話中多次使用環境變量,你可以使用:

export VAR1=value1 VAR2=value2 VARN=valueN

如果要在不影響當前 bash 會話的情況下執行具有多個變量的命令,可以使用:

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

與其他 *nix 系統一樣,您可以在 HOME 目錄下的 .bashrc 文件中添加如下功能。

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

現在,您可以通過以下命令啟動程序:

startec2

利用:

sh -c "VAR1=BLA-BLA VAR2=FOO-BAR && command"

例如:

sh -c "VAR1=BLA-BLA VAR2=FOO-BAR && exec echo $VAR1 $VAR2"

輸出:

BLA-BLA FOO-BAR

注意:通過exec運行命令以在命令完成后終止整個sh進程。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM