本文介绍了在bash中如何将一列拆分为固定尺寸的几列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何将单个列拆分为固定尺寸的多个列,例如,我有一个这样的列:

how can I split a single column in several column of fixed dimension, for example I have a column like this:

1
2
3
4
5
6
7
8

,尺寸为p.例4,我想获得

and for size p. ex 4, I want to obtain

1 5
2 6
3 7
4 8

或尺寸p.例2,我想获得

or for size p. ex 2, I want to obtain

1 3 5 7
2 4 6 8

推荐答案

使用awk:

awk '
  BEGIN {
    # Numbers of rows to print
    n=4;
  }
  {
    # Add to array with key = 0, 1, 2, 3, 0, 1, 2, ..
    l[(NR-1)%n] = l[(NR-1)%n] " " $0
  };
  END {
    # print the array
    for (i = 0; i < length(l); i++) {
      print l[i];
    }
  }
' file

这篇关于在bash中如何将一列拆分为固定尺寸的几列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-10 21:47