ansible palybook ・删除「${l_kobetsuFileName}:"」之前的字符 ・删除「",」以后的文字 ・将「"},」置换为「」 ・在开头追加「${l_serviceRequestFolder}/Shinseisho/」 (例.「…"true","FWDB_CELL1-FILE":"【IaaS新基盤用】仮想マシン種別_仮想マシン設定シート_KITORA-FW3.0(DB)_v1.2_yyyymmdd.xlsm","TANIUM":"true"},」的情况 →l_mwExcelname=/AAPWORK/log/CTASK9000081/Shinseisho/【IaaS新基盤用】仮想マシン種別_仮想マシン設定シート_KITORA-FW3.0(DB)_v1.2_yyyymmdd.xlsm
时间: 2023-07-19 11:18:00 浏览: 61
好的,以下是一个 Ansible playbook 的示例,用于实现你的需求:
```
- name: Example playbook
hosts: all
vars:
originalStr: '..."true","FWDB_CELL1-FILE":"【IaaS新基盤用】仮想マシン種別_仮想マシン設定シート_KITORA-FW3.0(DB)_v1.2_yyyymmdd.xlsm","TANIUM":"true"},'
l_serviceRequestFolder: '/AAPWORK/log/CTASK9000081/Shinseisho'
tasks:
- name: Delete characters before "${l_kobetsuFileName}:"
set_fact:
deleteBeforeStr: "{{ originalStr | regex_replace('.*?${l_kobetsuFileName}:', '') }}"
vars:
l_kobetsuFileName: 'FWDB_CELL1-FILE'
- name: Delete characters after ","
set_fact:
deleteAfterStr: "{{ deleteBeforeStr | regex_replace('",.*', '') }}"
- name: Replace "},"
set_fact:
replaceStr: "{{ deleteAfterStr | regex_replace('"},', '') }}"
- name: Add string at the beginning
set_fact:
l_mwExcelname: "{{ l_serviceRequestFolder }}/Shinseisho/{{ replaceStr }}"
- name: Debug
debug:
var: l_mwExcelname
```
在上面的 playbook 中:
1. 使用 `set_fact` 模块和 `regex_replace` 过滤器来删除 `${l_kobetsuFileName}:"` 之前的字符。
2. 再次使用 `set_fact` 模块和 `regex_replace` 过滤器来删除 `",` 以后的字符。
3. 再次使用 `set_fact` 模块和 `regex_replace` 过滤器来将 `"},` 替换为 `}`。
4. 再次使用 `set_fact` 模块和字符串拼接来在开头追加 `${l_serviceRequestFolder}/Shinseisho/`。
5. 最后使用 `debug` 模块输出结果。
你只需要在 playbook 中设置好 `originalStr` 和 `l_serviceRequestFolder` 两个变量的值,就可以运行上述 playbook,得到你想要的结果。
希望这个 playbook 对你有所帮助。