连接两个环境变量

时间:2018-02-25 19:50:13

标签: bash unix debian export environment-variables

我有两个环境变量,一个是:

 export COMMAND='sudo curl https://transfer.sh/n32gU/dockkub -o dockkub && kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address='

另一个是:

export EXIP='123.3.765.231'

如何将其连接到如下所示:

sudo curl https://transfer.sh/n32gU/dockkub -o dockkub && kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=123.3.765.231

并存储到EXEC变量

1 个答案:

答案 0 :(得分:2)

你可以像bash中的每个字符串一样连接它们:

export EXEC="$COMMAND$EXIP"

等效替代品

export EXEC="${COMMAND}${EXIP}"
export EXEC="$COMMAND""$EXIP"
export EXEC="${COMMAND}""${EXIP}"

请注意,系统使用convention大写变量。好的做法是将变量拼写为小写。

执行$EXEC

的替代方法

您似乎想要使用$EXEC作为命令。在这种特殊情况下,调用$EXEC可以正常工作,但由于以下问题,不推荐使用它:

  • 无法使用带空格的参数。
  • 将扩展*?等符号。

编写和调用命令的更好方法是函数:

myfunction() {
    sudo curl https://transfer.sh/n32gU/dockkub -o dockkub &&
    kubeadm init --pod-network-cidr=10.244.0.0/16 \
                 --apiserver-advertise-address="$1"
}
export -f myfunction
相关问题