执行
的替代方案
我有两个环境变量,一个是:
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
和存储到执行变量
您只需将它们连接到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