Bash 连接两个环境变量
我有两个环境变量,一个是:Bash 连接两个环境变量,bash,unix,debian,export,environment-variables,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://trans
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变量您只需将它们连接起来,就像在bash中对每个字符串所做的那样:
export EXEC="$COMMAND$EXIP"
等效的替代方案包括
export EXEC="${COMMAND}${EXIP}"
export EXEC="$COMMAND""$EXIP"
export EXEC="${COMMAND}""${EXIP}"
请注意,按大写字母排列的变量由系统使用。好的做法是用小写字母拼写变量
执行$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
看见