在cloud init runcmd中使用管道失败

时间:2015-10-21 09:37:49

标签: ubuntu amazon-web-services cloud digital-ocean cloud-init

如何在我的cloud init脚本的runcmd部分中使用管道重定向命令的输出?以下失败:

runcmd:
    - [curl, -sk, https://example.com/packages/current/install.bash, '|', /bin/bash, -s,  agent:certname=XYZ.com] 

最终会创建一个如下所示的脚本:

'curl' '-sk' 'https://example.com/packages/current/install.bash' '|' '/bin/bash' '-s' 'agent:certname=XYZ.com'

由于管道被引用,脚本失败。我怎样才能解决这个问题呢?

1 个答案:

答案 0 :(得分:3)

使用单个字符串,而不是使用数组。

runcmd:
    - 'curl -sk "https://example.com/packages/current/install.bash" | /bin/bash -s,  agent:certname=XYZ.com'

另请参阅:https://www.digitalocean.com/community/questions/help-with-cloud-init-syntax-for-runcmd