gpt4 book ai didi

arrays - 从 shell 脚本有效地访问变量

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:35:58 25 4
gpt4 key购买 nike

我有一个 ini 配置文件,我需要使用该配置创建一个 shell 脚本。访问所有变量的最简单方法是什么,可以从 shell 脚本中有效使用。

我可以使用数组之类的东西吗?现在计划找到 [] 括号的计数,然后通过 awk 一个一个地获取所有变量。请建议是否有任何最简单的有效方法

cat app.ini 

在我的示例配置文件的输出下方。可以是 N 个 block 。

[APP1]
name=Application1
StatusScript=/home/status_APP1.sh
startScript=/home/start_APP1.sh
stopScript=/home/stop_APP1.sh
restartScript=/home/restart.APP1.sh
logdir=/log/APP1/

[APP2]
name=Application2
StatusScript=/home/status_APP2.sh
startScript=/home/start_APP2.sh
stopScript=/home/stop_APP2.sh
restartScript=/home/restart.APP2.sh
logdir=/log/APP2/
.
.
.
.
.
[APPN]
name=ApplicationN
StatusScript=/home/status_APPN.sh
startScript=/home/start_APPN.sh
stopScript=/home/stop_APPN.sh
restartScript=/home/restart.APPN.sh
logdir=/log/APPN

/

最佳答案

考虑使用像 bash-ini-parser 这样的库 https://github.com/albfan/bash-ini-parser .它涵盖了许多细微差别,例如缩进、空格、注释等。

您的案例示例可能如下所示:

 #!/bin/bash

. bash-ini-parser

cfg_parser app.ini

cfg_section_APP1
echo $name

cfg_section_APP2
echo $logdir

cfg_section_APPN
echo $logdir

关于arrays - 从 shell 脚本有效地访问变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49063933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com