Bash AWK,得到第一和第二输出(int)

时间:2016-04-06 22:44:21

标签: bash shell awk

我有一个脚本,我将分数写入一个名为log.txt

的文件

在这个文件中,我保存得分如下:(数字1只是一个例子)

Won: 1
Lose: 1

我写过这个AWK命令:

gameswon=`awk -F : '{print $2}' "$file"`

它给了我这个结果:

1 1

如何保存第一个号码,"赢得" 而第二个数字是"输掉"

希望有人能帮助我

2 个答案:

答案 0 :(得分:1)

您可以使用bash array

gameswon=($(awk -F: '{print $2}' "$file"))
won=${gameswon[0]}
lose=${gameswon[1]}

这会将awk -F: '{print $2}' "$file"的输出放入数组$gameswon

答案 1 :(得分:0)

您可以在进程替换中使用read和几个修饰符awk:

read -r won lose < <(awk -F : '$1 ~ /^(Won|Lose)$/{printf "%s ", $2+0}' "$file")