ansible - 如何在ansible中转义特殊字符
问题描述
我有一个包含以下 $${local_ip_v4} 的文件。我需要用我的计算机的实际 IP 替换它。我创建了以下任务,但不确定如何使其匹配。我似乎无法弄清楚如何逃避“{}”
vars:
floatingIP: 1.1.1.1
- name: "Fix sip_profiles to listen on floating IP"
replace:
path: /etc/freeswitch/sip_profiles/internal.xml
regexp: "$${local_ip_v4}"
replace: "{{ floatingIP }}"
解决方案
你必须使用双反斜杠,请看下面的任务。我在 中添加了反斜杠$
,因为它在正则表达式中具有特殊含义,而您想捕捉字符$
任务:
- name: "Fix sip_profiles to listen on floating IP"
replace:
path: /php_basedir/ANSIBLE/ANSIBLE_TESTS/testfile.txt
regexp: "\\$\\$\\{local_ip_v4\\}"
replace: "{{ floatingIP }}"
推荐阅读
- date - Google Sheet LARGE 公式错误“LARGE 没有有效的输入数据”
- metal - 如果 Metal 输出图像与 iOS 具有相同的坐标系,为什么要翻转它?
- hyperledger-fabric - 执行 ./network.sh up createChannel 时出错
- mysql - 如何解决 ServiceStack OrmLite 对七个连接表的限制
- javascript - 有条件地填写字段 WordPress
- python - 按嵌套对象日期排序
- text - 如何在没有 excel 的情况下转换文本?
- javascript - GAS依次选择和上传文件
- python - SQLAlchemy 复杂的 RBAC - 外键完全是其中之一
- r - 在 R 中创建具有不同名称的数据帧的循环