bash - 动态命令 - shell 脚本
问题描述
我是 shell 脚本的新手,我正在尝试根据几个条件动态地形成查询。这是代码片段
if [[ $(id -u) -eq 0 ]]
then
SSH_COMMAND="${cmd} > ${LOG_OUTPUT_FULL_PATH}/kubectlnodes.log"
else
SSH_COMMAND="'echo paass | sudo -S sh -c '${cmd} > ${LOG_OUTPUT_FULL_PATH}/kubectlnodes.log''"
fi
#echo "executing ${SSH_COMMAND}"
$(${SSH_COMMAND})
我的命令已正确写入 SSH_COMMAND 变量,但是在执行命令时,它首先执行 echo 并且我的整个命令都失败了。我尝试了以下格式来执行 SSH_COMMAND 变量 ${SSH_COMMAND} 和 $(${SSH_COMMAND}) 中的完整命令,但两者都部分执行并且命令失败。
感谢对此的任何投入
解决方案
推荐阅读
- postgresql - 并行运行两个过程 postgresql
- r - 不同的 Set.seed 样本函数在不同操作系统中使用相同版本的 R
- excel-formula - Excel - 分区运行总计
- ios - CoreData 是否支持方法?
- php - 条带密钥存储在哪里,它们是否加密?- wordpress / woocommerce
- flutter - 查询仅处理一个参数 Flutter Firestore
- django - 如何在 Django 视图中使用来自 ModelSet 视图的响应?
- mongodb - 为什么 MongoDB local.oplog.rs 集合没有索引?
- php - 为什么在我将服务迁移到本地主机后子页面不加载
- azure-keyvault - Azure API 管理用户分配的标识自定义域 KeyVault