是否有任何方法我可以在gcloud SSH——命令参数中给出多行?



我正在尝试从gcloud为多个实例安装代理,

gcloud compute ssh example-instance --zone=us-central1-a --command="sudo su - && mkdir /tmp && cd /tmp && ..."

包含的步骤:

  1. sudo su -
  2. mkdir/tmp
  3. cd/tmp
  4. 下载代理

如何从gcloud compute SSH运行多行脚本——command= ?

您可以使用heredoc,但您不应该在脚本中包含sudo,您希望以root身份运行:

# Create SCRIPT 
read -r -d '' SCRIPT <<EOF
mkdir /tmp
cd /tmp
...
EOF
gcloud compute ssh ${NAME} 
--zone=${ZONE} 
--command="sudo ${SCRIPT}"

使用启动脚本安装代理可能会更好。使用--command需要将脚本作为变量传递,并且倾向于更加特别。

相关内容

  • 没有找到相关文章

最新更新