0

我有一个看起来像这样的文件:

GOES-15,167,170,+,3
GOES-14,150,146,-,4
GOES-13,100,100,-,0
GOES-WEST,-160,-170,-,10

我想读取每行的最后两个元素(例如第一行的+3)并将它们并排(+3)添加到行尾并用逗号分隔,就像这样:

GOES-15,167,170,+,3, +3

这是我正在尝试的:

#!/bin/bash

file=weather_sats.txt

while read line
do
    ADD=$(awk -F, '{print $4$5}')
    sed -i 's/$/,$ADD/' $file
done < $file

exit 0

这不起作用,因为我在每一行的末尾都得到了“$ADD”。非常感谢任何帮助!

4

2 回答 2

1

这可能会做你想要的。

awk -F, '{print $0","$(NF-1)$NF}' file.txt
于 2021-03-09T14:02:12.407 回答
0

使用纯awk

awk -F, 'BEGIN { OFS="," } {print $0, $4$5 }'

这会产生所需的输出。

于 2021-03-09T14:04:08.490 回答