本文介绍了Ansible Lineinfile中的引号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我在Ansible中使用lineinfile时,它没有写'"字符lineinfile: 'dest=/home/xyz state=present line="CACHES="default""'

When I use lineinfile in ansible it is not writing ', " characterslineinfile: 'dest=/home/xyz state=present line="CACHES="default""'

它正在给CACHES=default但所需的输出是CACHES="default"

it is giving CACHES=defaultbut the desired output is CACHES="default"

如何实现?

推荐答案

看来您可以转义引号:

- lineinfile: dest=/tmp/xyz state=present line="CACHES=\"default\""

给出以下输出:

$ cat /tmp/xyz
CACHES="default"

您不需要转义双引号内的单引号:

You don't need to escape single quotes that are inside double quotes:

- lineinfile: dest=/tmp/xyz state=present line="CACHES=\"default\" foo='x'"
cat /tmp/xyz
CACHES="default" foo='x'

来源: YAML规范

这篇关于Ansible Lineinfile中的引号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-27 05:48