【问题标题】:Ansible replace and brackets "["Ansible 替换和括号“[”
【发布时间】:2016-09-04 21:02:56
【问题描述】:

我正在尝试使用 Ansible 修改配置文件,但由于括号被视为正则表达式元素,它们似乎没有被考虑在内。

但是如果我试图逃避它们,我会遇到语法错误......它应该如何工作?

# does nothing
regexp: "# unicorn['worker_processes'] = 2"

# error
regexp: "# unicorn\['worker_processes'\] = 2"

# error
regexp: '# unicorn\[\'worker_processes\'\] = 2'

【问题讨论】:

    标签: regex yaml ansible


    【解决方案1】:

    您所说的正则表达式在字符串文字中。这意味着您应该像这样转义方括号之前的反斜杠:

    regexp: '# unicorn\\[\'worker_processes\'\\] = 2'
    

    更好:

    regexp: "# unicorn\\['worker_processes'\\] = 2"
    

    【讨论】:

    • 太棒了!我不会想到这一点……在尝试了几个小时都没有成功后,我正要把头撞在墙上。非常感谢!
    猜你喜欢
    • 2019-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-19
    • 1970-01-01
    • 2018-06-01
    • 1970-01-01
    • 2015-04-26
    相关资源
    最近更新 更多