【发布时间】:2022-01-12 13:32:58
【问题描述】:
我想自动将新后端添加到配置文件中,但不知道该怎么做。文件的相关部分如下所示:
[backend]
backends = backend-1 backend-2
timeout = 10
connectionsperhost = 100
[backend-1]
url = https://somedomain.com
secret = 6135bcb7849ca1886e2de193
[backend-2]
url = https://anotherdomain.com
secret = 75048ad646a5af787cbbaaa3
我正在寻找一个简单的解决方案来添加另一个具有特定 url 和密码的后端条目。
[backend-3]
url = https://adiffrentdomain.com
secret = 42349234238423424
同时将名称“backend-3”附加到“[backend]”部分的“backends =”行。
有没有办法通过一般的 sed 或 bash 脚本来完成这项工作?
感谢任何帮助或提示!
【问题讨论】:
-
url和secret的信息从哪里来?标准输入、文件等?
-
因为这将在 bash 脚本中使用,所以它来自变量。该信息由脚本的用户在开头提供。
-
脚本是否应该为自己找出后端编号?它添加的部分是否需要紧跟在其他后端之后(例如,在第一个后端之前或在文件末尾)?或者,脚本是否可以依赖所有后端部分在输入中组合在一起?关于
[backend]部分的位置和原始内容,它可以依赖什么? -
您在 cmets 中提到建议的答案错误地将新的
backends-3部分添加到文件末尾;我假设您的文件包含除backends数据之外的其他条目,在这种情况下,您应该使用其他数据的一些样本(对于输入和预期输出)更新问题,以便我们更好地了解新条目的位置是相对于文件中的其他数据插入的 -
您能否确认编号为
backends的条目始终以1开头并且编号中没有间隔(例如,您不能有backends-1 backends-5?