小编alf*_*red的帖子

在C中是否有类似于Python的expandvars?

我有一个字符串存储在一个被读入字符串的文件中.我希望将*nix shell格式中定义的变量替换为相应的环境值.

例如,环境变量$DEPLOY=/home/user"deploypath=$DEPLOY/dir1"变为"deploypath=/home/user/dir1"

有一个简单的库可以做到这一点吗?

#include "supersimplelib.h"
char *newstr = expandvars(oldstr);
Run Code Online (Sandbox Code Playgroud)

(或类似的)

我明白我可以使用正则表达式lib然后调用,getenv()但我想知道是否还有另一种更简单的方法?

它只能在Linux下编译.

c linux environment-variables

10
推荐指数
1
解决办法
429
查看次数

Helm:生成以逗号分隔的列表

使用Helm模板,我试图根据values.yaml中的数字生成服务器名称列表.此模板的点设置为数字(其为float64).

{{- define "zkservers" -}}
{{- $zkservers := list -}}
{{- range int . | until -}}
{{- $zkservers := print "zk-" . ".zookeeper" | append $zkservers -}}
{{- end -}}
{{- join "," $zkservers -}}
{{- end -}}
Run Code Online (Sandbox Code Playgroud)

对于3的输入,我希望这会产生:

zk-0.zookeeper,zk-1.zookeeper,zk-2.zookeeper
Run Code Online (Sandbox Code Playgroud)

它什么都不产生.

我知道范围块中的行是无操作,因为每次循环迭代时变量$ zkservers都是一个新变量.它与外部作用域中的$ zkservers不是同一个变量.

我希望意图清楚我想做什么.我不知道怎么做.

任何人都知道如何使用Helm模板执行此操作?

go-templates kubernetes kubernetes-helm

8
推荐指数
5
解决办法
8220
查看次数