使用CLI启动AWS实例时如何传递用户数据

Edw*_*ard 8 command-line-interface amazon-web-services

我正在使用AWS CLI启动实例,命令为:aws ec2 run-instances

我期待的是将脚本作为用户数据传递.所以,我做了:DATA = base64 ./my_script 在我的Mac OSX上,然后传递DATA:aws ec2 run-instances --user-data $ DATA

但实例发布后没有任何反应

那么,我该怎么做?

谢谢!!

Eri*_*ond 17

无需自己对数据进行base64编码.

您可以使用file://为文件名/路径添加前缀://

所以,

aws ec2 run-instances --user-data file://my_script
Run Code Online (Sandbox Code Playgroud)

要么

aws ec2 run-instances --user-data file:///full/path/to/my_script
Run Code Online (Sandbox Code Playgroud)


AXE*_*abs 5

要将脚本作为字符串传递,请确保在命令之前正常指定解释器。在打开的字符串中点击 Enter 允许添加一个新行。前任。:

$ aws ec2 run-instances --image-id ami-16d4986e --user-data '#!/bin/bash
> poweroff'
Run Code Online (Sandbox Code Playgroud)