将文本文件解析为变量

时间:2017-08-20 22:17:43

标签: bash

$ cat file.txt
example1@domain1-username

我想解析file.txt并将内容导出到以下变量:

var1=example1@domain1
var2=username

3 个答案:

答案 0 :(得分:2)

仅使用Bash builtins:

$ IFS=- read var1 var2 <<< "$(< file.txt)"    
$ declare -p var1 var2                      
declare -- var1="example1@domain1"                        
declare -- var2="username"

这会将字段分隔符IFS设置为-,然后将文件读入两个变量。

<<< "$(< file.txt)"是一个但不实用的,因为我们将文件视为单行文本。

答案 1 :(得分:1)

trait ATrait {
    function calc($v) {
        return $v+1;
    }
}

class A {
    use ATrait;
}

trait BTrait {
    function calc($v) {
        $v++;
        return parent::calc($v);
    }
}

class B extends A {
    use BTrait;
}

print (new B())->calc(2); // should print 4

答案 2 :(得分:0)

以下命令将在file.txt中单次传递中设置var1和var2:

. file.txt