猿问

删除文件开头的新行 - Go 模板

我正在使用休闲循环在 Hashicorp Vault 中生成凭证文件。一切正常,但我在文件开头换了一行。我怎样才能删除它?


vault.hashicorp.com/agent-inject-template-credentials.txt: |

  {{- with secret (print "secret/data/test/config") }}{{- range $k, $v := .Data.data }}

  {{ $k }}: {{ $v }}

  {{- end }}{{- end }}

输入:map[test1:test1 test2:test2 test3:test3]


当前输出:


// one empty line at the beginning

test1: test1

test2: test2

test3: test3


慕桂英546537
浏览 124回答 1
1回答

噜噜哒

您的模板在呈现元素之前包含一个换行符,使用-符号来摆脱它:{{- with secret (print "secret/data/test/config") }}{{- range $k, $v := .Data.data -}}{{ $k }}: {{ $v }}{{- end }}{{- end }}-请注意第一行末尾添加的符号。这当然会在同一行上呈现每一对。-通过从最后一行的开头删除符号,在呈现元素的末尾保留换行符:{{- with secret (print "secret/data/test/config") }}{{- range $k, $v := .Data.data -}}{{ $k }}: {{ $v }}{{ end }}{{- end }}或者,您可以将第一个添加的-符号移动到第二行的开头:{{- with secret (print "secret/data/test/config") }}{{- range $k, $v := .Data.data }}{{- $k }}: {{ $v }}{{ end }}{{- end }}这些模板将输出(没有第一个空行):test1: test1test2: test2test3: test3在Go Playground上尝试一下。
随时随地看视频慕课网APP

相关分类

Go
我要回答