我必须从文件中读取并将值分配给变量。然后我必须将它们保存在另一个文件中。我知道如何做第二部分和第三部分,但我不知道如何从文件中读取。
示例文件如下所示。我如何吃掉不需要的东西,比如点、换行符和存储值,有点像 a = 21、b = 8 等等。
(请注意 A 21 后面没有空行,假设为 A 21\nB 8 以此类推)
Points:
A 21
B 8
C 2
D 13
E 24
我必须从文件中读取并将值分配给变量。然后我必须将它们保存在另一个文件中。我知道如何做第二部分和第三部分,但我不知道如何从文件中读取。
示例文件如下所示。我如何吃掉不需要的东西,比如点、换行符和存储值,有点像 a = 21、b = 8 等等。
(请注意 A 21 后面没有空行,假设为 A 21\nB 8 以此类推)
Points:
A 21
B 8
C 2
D 13
E 24
您可以检查变量是否为空。像这样的东西:
while read -r var val; do
[[ ! -z $var && ! -z $val ]] && echo "$var=$val"
done < file
$ cat file
Points:
A 21
B 8
C 2
D 13
E 24
$ while read -r var val; do [[ ! -z $var && ! -z $val ]] && echo "$var=$val"; done < file
A=21
B=8
C=2
D=13
E=24
要在评论中回答您的问题……</p>
$ . <(while read -r var val; do [[ ! -z $var && ! -z $val ]] && echo "$var=$val"; done < file)
$ echo $A
21
$ echo $B
8
也许我没有考虑到这一点,但这不是工作吗?
sed 's/ / = /' file > newfile