我是靠谱客的博主 刻苦眼睛,最近开发中收集的这篇文章主要介绍yaml yml 换行 多行 语法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

参考yaml官网

yaml 文件中多行字符串可以使用 | 保留换行符,使用 > 将换行符替换为空格

多行字符串可以使用引号括起来:" " 会进行特殊字符转义,' ' 保留原始字符串。

| 示例

# vim test.yml
---
- name: test
hosts: 127.0.0.1
gather_facts: no
tasks:
- name: echo test
# 换行符保留,输出三个 Line
shell: |
echo Line 1
echo Line 2
echo Line 3
register: result
- debug:
msg: "{{ result.stdout_lines }}"

执行结果:

TASK [debug] *****************************************
ok: [127.0.0.1] => {
# 可以看到三行输出
"msg": [
"Line 1",
"Line 2",
"Line 3"
]
}

> 示例

# vim test.yml
---
- name: test
hosts: 127.0.0.1
gather_facts: no
tasks:
- name: echo test
# 换行符删除,输出一行
shell: >
echo Line 1
echo Line 2
echo Line 3
register: result
- debug:
msg: "{{ result.stdout_lines }}"

执行结果:

TASK [debug] ********************************************
ok: [127.0.0.1] => {
"msg": [
# 只有一行输出,后面两行作为了 echo 的参数来执行,直接输出为原始字符串
"Line 1 echo Line 2 echo Line 3"
]
}

> 模式下,空行和缩进表示保留换行

例如,调整上述 task 中的缩进,即可输出 | 相同内容

使用缩进
# vim test.yml
---
- name: test
hosts: 127.0.0.1
gather_facts: no
tasks:
- name: echo test
# 缩进表示保留换行,结果为输出三行
shell: >
echo Line 1
echo Line 2
echo Line 3
register: result
- debug:
msg: "{{ result.stdout_lines }}"

输出为:

TASK [debug] *******************************
ok: [127.0.0.1] => {
"msg": [
"Line 1",
"Line 2",
"Line 3"
]
}

需要注意,只能是以第一行为基准添加缩进来表示换行,如果减少缩进,则为语法错误。
错误示例:


shell: >
echo Line 1
echo Line 2
echo Line 3
使用空行
# vim test.yml
---
- name: test
hosts: 127.0.0.1
gather_facts: no
tasks:
- name: echo test
# 输出为两行,后面两行作为一行输出
shell: >
echo Line 1
echo Line 2
echo Line 3
register: result
- debug:
msg: "{{ result.stdout_lines }}"

结果:

TASK [debug] *******************************
ok: [127.0.0.1] => {
"msg": [
"Line 1",
"Line 2 echo Line 3"
]
}

+-

+ 表示保留文字块末尾的换行,- 表示删除字符串末尾的换行。

最后

以上就是刻苦眼睛为你收集整理的yaml yml 换行 多行 语法的全部内容,希望文章能够帮你解决yaml yml 换行 多行 语法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部