我有一个如下所示的文件
>1BA9
394
395
396
397
>1CA3
438
439
440
441
442
我想像这样安排上面的文件
1BA9 394 397
1CA3 438 442
使用awk或sed怎么可能?
答案 0 :(得分:1)
awk -v RS='>' 'NR>1{print $1, $2, $NF}' file
NR>1
跳过第一个空记录。 答案 1 :(得分:0)
这可能适合你(GNU sed):
sed '/^>/!{H;$!d};x;s/\n\([^\n]*\)\n.*\n/ \1 /p;x;h;d' file
这将多行序列存储在从>
开始的任何行到保留空间中的下一个此类序列或文件结尾。然后删除不需要的部分并打印出结果。