我应该设置 EC2 _ HOME 和 JAVA _ HOME 变量 在运行命令之前(ec2-description-region)
我怎么才能一气呵成呢?
您可以一次性为单个命令设置 vars,方法是将它们放在命令行中的命令前面:
$ 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
作为其他 * nix 系统,您可以在 HOME 目录下的. bashrc 文件中添加如下函数。
function startec2(){ export EC2_HOME=/path/to/dir export JAVA_HOME=/other/path ec2-describe-regions }
现在,您可以通过以下命令启动程序:
startec2
如果希望在同一会话中多次使用环境变量,可以使用:
export VAR1=value1 VAR2=value2 VARN=valueN
如果希望在不影响当前 bash 会话的情况下执行具有多个变量的命令,可以使用:
VAR1=value1 VAR2=value2 VARN=valueN command arg=1
用途:
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进程。
exec
sh