复制一行并在bash linux中粘贴5次

时间:2014-10-19 15:33:12

标签: linux bash copy line paste

在bash的副本行中需要帮助..

**Input: (input.txt)**

http://localhost.com/123/test.png
http://localhost.com/456/test.png

所以这两行应该在newfile中粘贴5次... 所以我想得到这样的输出......

**Output: (output.txt)**

http://localhost.com/123/test.png
http://localhost.com/123/test.png
http://localhost.com/123/test.png
http://localhost.com/123/test.png
http://localhost.com/123/test.png
http://localhost.com/456/test.png
http://localhost.com/456/test.png
http://localhost.com/456/test.png
http://localhost.com/456/test.png
http://localhost.com/456/test.png

那怎么可能呢? 有人可以给shell脚本以使其成为可能..

谢谢

4 个答案:

答案 0 :(得分:0)

试试这个:

awk '{for (i=0;i<5;i++) print $NF }' input.txt

答案 1 :(得分:0)

您可以使用:

 sed 'p;p;p;p' input.txt > output.txt

答案 2 :(得分:0)

你也可以尝试下面的perl命令。

perl -ne 'print "$_"x5' file

$_是Perl中的一个特殊变量,它在awk中存储当前行,如$0。所以"$_"x5将重复当前行5次。

答案 3 :(得分:0)

这是循环的经典方式:

while read line; do
  for i in {1..5}; do
    echo "before_text${line}after_text"
  done
done < input.txt