【发布时间】:2020-02-14 02:19:09
【问题描述】:
在我的 ansible-playbook 中,任务实现了用字符替换文件文本中的问题。我正在使用带有 sed 的 ansible 模块外壳。
我想解决问题
txt.file:Some text @@VAR_NUMBER_ONE@@
新的txt.file:Some text {{VAR_NUMBER_ONE}}
- name: sed
shell: sed -i 's|@@\([a-zA-Z_ ]*\)@@|\{{\1}}|g' txt.file
我遇到了致命错误
致命:[本地主机]:失败! => { "msg": "在模板化 's|@@\([a-zA-Z_ ]*\)@@|\{{\1}}|g' 时发生未处理的异常。错误是原始消息:意外char u'\\' at 25" }
【问题讨论】:
-
试试
sed -i 's|@@\([^@]*\)@@|{{\1}}|g' txt.file。不确定,但您可能需要将每个反斜杠加倍。
标签: python regex shell ansible