1
我有以下file
:如何用awk重複行?
var1 10 10,11,13
var2 10 12,20,91
var3 10 6,7
var4 11 4
我想在第三個字段中的所有號碼在不同的行,但我需要在前兩個領域保持一致:
var1 10 10
var1 10 11
var1 10 13
var2 10 12
var2 10 20
var2 10 91
var3 10 6
var3 10 7
var4 11 4
我試着使用:
awk '{ split ($3, a, ","); print $1"\t"$2"\t"a[1]"\n"$1"\t"$2"\t"a[2]"\n"$1"\t"$2"\t"a[3] }' file | awk '{ if (length($3)>1) print $0 }'
但是,這是非常低效的,這是繁瑣的編碼$1
和$2
每次。如果有人可以請幫助我,這將不勝感激。請注意,答案不一定限於awk
,這只是一種偏好,因爲我最熟悉它。
應該是for(i = 1 ...) – karakfa