萨拉姆 以下是所需的输出:
RXOTG-136 VENEN6 0 VENEN6 1 VENEN7 0 VENEN7 1 RXOTG-137 TIVIK6 0 TIVIK6 1 RXOTG-138 KESTA1 0 KESTA1 1 KESTA2 0 KESTA2 1 KESTA3 0 KESTA3 1 RXOTG-139 KESTA4 0 KESTA4 1
为此我使用了以下命令
awk 'NF==1{a=$1; next}{ print val}'
但我得到的输出是
RXOTG-136 VENEN6 0 RXOTG-136 VENEN6 1 RXOTG-136 VENEN7 0 RXOTG-136 VENEN7 1 RXOTG-137 TIVIK6 0 RXOTG-137 TIVIK6 1 RXOTG-138 KESTA1 0 RXOTG-138 KESTA1 1 RXOTG-138 KESTA2 0 RXOTG-138 KESTA2 1 RXOTG-138 KESTA3 0 RXOTG-138 KESTA3 1 RXOTG-139 KESTA4 0 RXOTG-139 KESTA4 1
最佳答案
awk 'NF==3{a=$1} NF==2{$1=a OFS $1} 1' file
- 您需要将第一个字段存储在某处
- 1 用于打印每一行
由于 $1~$3 的重新分配,格式会发生变化,因此您可以使用
column -t
对其进行格式化awk 'NF==3{a=$1} NF==2{$1=a OFS $1} 1' 文件 |列-t
关于linux - 空行下的第一列副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49528583/