相关疑难解决方法(0)

在Bash中解析配置文件中的变量

在文件中包含以下内容:

VARIABLE1="Value1"
VARIABLE2="Value2"
VARIABLE3="Value3"
Run Code Online (Sandbox Code Playgroud)

我需要一个输出以下内容的脚本:

Content of VARIABLE1 is Value1
Content of VARIABLE2 is Value2
Content of VARIABLE3 is Value3
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

variables bash awk parsing

20
推荐指数
4
解决办法
6万
查看次数

在不使用"source"的情况下读取BASH中的配置文件

我正在尝试读取格式如下的配置文件:

USER = username
TARGET = arrows
Run Code Online (Sandbox Code Playgroud)

我意识到,如果我摆脱了空间,我可以简单地获取配置文件,但出于安全考虑,我试图避免这种情况.我知道有一种方法可以逐行读取配置文件.我认为这个过程是这样的:

  1. 将行读入数组
  2. 过滤掉所有以#开头的行
  3. 在数组中搜索变量名称

在那之后,我迷路了.任何和所有的帮助将不胜感激.我尝试过这样的事情没有成功:

backup2.config>cat ~/1

grep '^[^#].*' | while read one two;do
    echo $two
done
Run Code Online (Sandbox Code Playgroud)

我从我发现的论坛帖子中删除了它,但不知道如何修改它以满足我的需求,因为我是shell脚本的新手.

http://www.linuxquestions.org/questions/programming-9/bash-shell-program-read-a-configuration-file-276852/


是否可以通过循环遍历两个数组来自动分配变量?

for (( i = 0 ; i < ${#VALUE[@]} ; i++ ))
do
    "${NAME[i]}"=VALUE[i]           
done
echo $USER
Run Code Online (Sandbox Code Playgroud)

这样调用$ USER会输出"用户名"?上面的代码不起作用,但我知道解决方案与此类似.

bash grep config eval

15
推荐指数
2
解决办法
2万
查看次数

数组像bash(配置文件)中的数据结构?

我写了一个bash脚本,它处理多个文件.我现在想添加对配置文件的支持.这是我想要的数据结构:

Array ( 
    [0] => Array (
        [name] => datset1
        [path] => /var/lib/bliTool/ds1
        [type] => cvs
    )

    [1] => Array (
        [name] => datset2
        [path] => /var/lib/bliTool/ds2
        [type] => xml
    )

    [2] => Array (
        [name] => datset3
        [path] => /home/igor/test/ds3
        [type] => cvs
    )
)
Run Code Online (Sandbox Code Playgroud)

Q1在bash中这样的数据结构是否可行?还有其他建议吗?请记住,这应该在配置文件中...

Q2:我正在考虑每个'set'的一个配置文件

/etc/myApp/
/etc/myApp/myApp.conf
/etc/myApp/datasets.d/
/etc/myApp/datasets.d/ds1.conf
/etc/myApp/datasets.d/ds2.conf
/etc/myApp/datasets.d/dsN.conf
Run Code Online (Sandbox Code Playgroud)

每个/etc/myApp/datasets.d/dsN.conf文件看起来都像

name=The DS name
path=/the/path/to/the/ds/files
type=thetype
Run Code Online (Sandbox Code Playgroud)

您有什么推荐的吗?有没有办法在一个文件中执行所有操作?

问题3:我想支持每组多个路径值.我可以支持类似的东西

path="/first/path /second/path"
Run Code Online (Sandbox Code Playgroud)

但是我觉得我会遇到空间问题,所以我应该介绍一个像

path="/first/path:/second/path"
Run Code Online (Sandbox Code Playgroud)

拆分字符串.

或者,还有更好的方法?

bash configuration-files

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

bash ×3

awk ×1

config ×1

configuration-files ×1

eval ×1

grep ×1

parsing ×1

variables ×1