bash - 处理中的替换命令。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 配置上编写此命令以使其正常工作,那就太棒了。
解决方案
推荐阅读
- rx-java - RxJava:将重试与扩展的单个 Observable 一起使用不会发出数据
- wordpress - 使用 My Custom Functions 插件编辑我的 wordpress 网站的页脚版权信用后,我的网站已关闭
- java - 命名应用程序包是否有任何严格的规则
- bootstrap-4 - Angular Material TextArea 自动调整大小不适用于 bootstrap 4
- java - 是否需要在本地安装mysql才能在另一台计算机上保存和检索sql数据?
- c++ - C++中的嵌套结构
- jenkins - 如何在电子邮件中使用 Jenkins 发送最新附件?
- file - NiFi - TailFile - 多个文件
- php - laravel 5.5 电子邮件通知未更新内容
- java - 使用 DAO 模式对数据进行建模和访问