【发布时间】:2016-07-06 12:43:20
【问题描述】:
我有以下文件:
452 0/0 10 30 40
460 0/1 0 40 40
500 0/0 5 35 40
600 0/1 15 25 40
800 1/1 40 0 40
真正的文件包含数百万行。如果第二个字段是 0/0,我打印第 3 列和第 5 列。如果第二个字段是 1/1,我打印第 4 列和第 5 列。使用此命令:
awk 'BEGIN{OFS="\t"}{ if($2=="0/0") {print $1, $2, $3, $5} else if($2=="1/1") {print $1, $2, $4, $5}}' file
问题是当第二个字段是0/1时。我想随机选择 0 或 1,如果选择 0,则打印第 3 列和第 5 列,如果选择 1,则打印第 4 列和第 5 列。
有没有办法在每次有 0/1 时随机选择 0 或 1?代码可以是 awk、bash 或 python。
【问题讨论】: