oc.exe 命令提示符中的 OpenShift GoLang 模板解析错误:if 中的意外未关闭操作
OpenShift GoLang Template parsing error in oc.exe command prompt: Unexpected unclosed action in if
请找到我用来从 openshift 容器
中获取 运行 pods 的以下脚本
oc get pods -o template --template {{range.items}}{{if eq .status.phase "Running"}}{{.metadata.name}}{{.status.phase}}{{end}}{{end}}
您稍后必须使用大写
您无法访问小写的字段..
{{range .items}}
{{if .Status.Phase "Running"}}
{{.Metadata.Name}}
{{.Status.Phase}}
{{end}}
{{end}}
我认为您的命令有多个问题,一个是您需要在 range .items
之间放置一个 space,主要问题是您没有将模板放在引号中。这导致模板被读取为 {{range.items}}{{if
,这将导致上述错误。
要解决此问题,请将您的模板放在引号中,但也要注意转义命令中的所有其他引号:
oc get pods -o template --template "{{range .items}} {{if eq .status.phase \"Running\"}} {{.metadata.name}} {{.status.phase}} {{\"\n\"}} {{end}} {{end}}"
请找到我用来从 openshift 容器
中获取 运行 pods 的以下脚本oc get pods -o template --template {{range.items}}{{if eq .status.phase "Running"}}{{.metadata.name}}{{.status.phase}}{{end}}{{end}}
您稍后必须使用大写 您无法访问小写的字段..
{{range .items}}
{{if .Status.Phase "Running"}}
{{.Metadata.Name}}
{{.Status.Phase}}
{{end}}
{{end}}
我认为您的命令有多个问题,一个是您需要在 range .items
之间放置一个 space,主要问题是您没有将模板放在引号中。这导致模板被读取为 {{range.items}}{{if
,这将导致上述错误。
要解决此问题,请将您的模板放在引号中,但也要注意转义命令中的所有其他引号:
oc get pods -o template --template "{{range .items}} {{if eq .status.phase \"Running\"}} {{.metadata.name}} {{.status.phase}} {{\"\n\"}} {{end}} {{end}}"