如何从文件读取变量?

如何从文件读取变量?

我制作了一个文件,其中包含一个简单线性回归代码,用于计算 x 和 y 值的平均值及其标准差。现在,我不想自己插入值(用户输入),而是想制作一个不同的文件,其中已经存储了值,并将它们“输入”到我的线性回归代码中。我该怎么做?(请记住,我有 Windows 10,所以请为我提供与我的操作系统兼容的代码)

PS:我对 Bash/Ubuntu 环境还很陌生,所以我不了解终端中使用的几乎所有东西。

答案1

数据.txt:

1    2
3    4
5    6

脚本.sh:

#!/bin/bash

# Import values form a file into an array using redirect.
array=($(<./data.txt))
echo "count: ${#array[@]}, data: ${array[@]}"

# We increase the counter i by the number of columns.
for ((i=0; i<${#array[@]}; i+=2)); do
     echo "X=${array[$i]}, Y=${array[(i+1)]}"
done

答案2

  1. 通过其他软件创建变量文件,使其看起来像这样:

    $ cat /tmp/foo.var   
    foo1="bar1"    
    foo2="bar2"   
    foo3="bar3"   
    
  2. 然后从你的 bash 脚本中获取你的变量文件,/tmp/test.txt如下所示:

    #!/bin/bash   
    source /tmp/foo.var   
    echo "$foo1"
    

相应地调整路径。特别是在使用 Windows 时。

相关内容