第二行中的重复数字,n次,其中n是第一行中的数字

时间:2015-06-18 04:12:39

标签: awk

我有文本文件,每个文件都有一列数字:

2
3
4

我想复制第二行n次,其中n是第一行中的数字,因此输出如下所示:

3
3

我在awk做了类似的事情,但似乎无法弄清楚这个具体的例子。

2 个答案:

答案 0 :(得分:1)

$ awk 'NR==1{n=$1;} NR==2{for (i=1;i<=n;i++) print; exit;}' file
3
3

如何运作

  • NR==1{n=$1;}

    当我们到达第一行时,请将数字保存在变量n

  • NR==2{for (i=1;i<=n;i++) print; exit;}

    当我们到达第二行时,将其打印n次并退出。

答案 1 :(得分:0)

只是为了好玩

 read c d < <(head -2 file) | yes $d | head -n $c

提取前两行,分配给c和d;永远重复$ d,但获得第一个$ c行。