首页 > 解决方案 > 处理中的替换命令。ebextensions

问题描述

我正在尝试在我的 aws beanstalk 实例中安装 Netdata。我在我的.ebextensions文件夹中创建了一个配置文件

container_commands:
  00install:
    command: "bash <(curl -Ss https://my-netdata.io/kickstart.sh) --dont-wait"
    ignoreErrors: true

当命令在 deploy beanstalk 上运行时会记录此错误。

/bin/sh: -c: line 0: syntax error near unexpected token `('
/bin/sh: -c: line 0: `bash <(curl -Ss https://my-netdata.io/kickstart.sh) --dont-wait'

我不知道 <() 是什么意思,所以我查了一下,发现它是process substitution. 据我了解,进程替换可以使用普通管道进行重写。

例如

more <( ls /usr/bin )

可能

ls /usr/bin | more

在我的命令中,我还传递了标志,所以我在使命令的管道版本正常工作时遇到了问题。

注意:根本问题是豆茎告诉我它对括号感到困惑。我的解决方案只是将命令转换为使用常规管道。但是,如果有人知道我如何在 beanstalk 配置上编写此命令以使其正常工作,那就太棒了。

标签: bashamazon-web-servicesamazon-elastic-beanstalk

解决方案


推荐阅读