gpt4 book ai didi

escaping - 如何在同一字符串中转义 YAML 中的双引号和单引号

转载 作者:行者123 更新时间:2023-12-02 18:43:07 25 4
gpt4 key购买 nike

我需要在 ansible 剧本中正确转义单引号和双引号才能设置环境变量。这些都不起作用:

  - name: Set environment variable
command: >
export EXTRA_CONFIG=“'”{"client": {"subscriptions": ["DIND-Worker"], "cluster": "internal"}}“'”

- name: Set environment variable
command: >
export EXTRA_CONFIG=''{"client": {"subscriptions": ["DIND-Worker"], "cluster": "internal"}}''

- name: Set environment variable
command: >
export EXTRA_CONFIG=''{\"client\": {\"subscriptions\": [\"DIND-Worker\"], \"cluster\": \"internal\"}}''

看了这个:

http://yaml.org/spec/current.html#id2532720

https://github.com/dotmaster/toYaml/issues/1

我收到的错误消息是:

fatal: [ip.address]: FAILED! => {"changed": false, "cmd": "export 'EXTRA_CONFIG={\"client\":' '{\"subscriptions\":' '[\"DIND-Worker\"],' '\"cluster\":' '\"internal\"}}'", "failed": true, "msg": "[Errno 2] No such file or directory", "rc": 2}

最佳答案

> 启动一个 block 标量,其中您根本不需要转义任何内容(并且没有处理转义序列)。因此,假设您想要在类似 JSON 的值周围加上单引号,只需执行以下操作:

  - name: Set environment variable
command: >
export EXTRA_CONFIG='{"client": {"subscriptions": ["DIND-Worker"], "cluster": "internal"}}'

编辑:另请注意,默认情况下折叠标量包含尾随换行符。如果您不想这样,只需使用 >- 而不是 >

关于escaping - 如何在同一字符串中转义 YAML 中的双引号和单引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37427498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com