Awk 如何将文件的第n行重复m次

Awk 如何将文件的第n行重复m次,awk,sed,Awk,Sed,我想在文本文件中重复第n行m次,但我无法做到。 我的档案是 # 1:host 1:host # 我想以这样的方式重复“1:host”,总共得到12行“1:host” 因此,预期结果应该是: # 1:host 1:host 1:host 1:host 1:host 1:host 1:host 1:host 1:host 1:host 1:host 1:host 这就是你想要做的吗 $ cat file # 1:host 1:host foo $ awk 'NR==3{for (i=1; i&

我想在文本文件中重复第n行m次,但我无法做到。 我的档案是

#
1:host
1:host
#
我想以这样的方式重复
“1:host”
,总共得到12行
“1:host”

因此,预期结果应该是:

#
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host

这就是你想要做的吗

$ cat file
#
1:host
1:host
foo

$ awk 'NR==3{for (i=1; i<=10; i++) print} 1' file
#
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
1:host
foo
$cat文件
#
1:主持人
1:主持人
福

$awk'NR==3{for(i=1;i请编写一个输入文件的示例,您想要的输出文件.sed不能很好地处理数字,但这里有一个可怕的乱码,它将适用于您的特定M和N值:
sed'2{N;p;p;p;p;p;}文件名
…或者,为了使它更简短、更神秘,
sed'2{N;h;G;p;}'文件名
对不起,StackOverflow不是这样工作的。“我想做X,请给我提示和/或示例代码”这样的问题被认为是离题的。请访问并阅读,特别是阅读这篇文章可能会对您有所帮助:
awk'($0~str){c--;f=1}($0!~str&&c&&f{while(c-->0)print str 1'c=12 str=“1:host”文件
完美答案埃德·莫顿先生。