将第一列复制为空行

时间:2015-03-26 08:00:06

标签: linux

我有以下类型的文件:

A
    a    b
    c    d
B
    e    f

我希望它看起来像这样:

A    a    b
A    c    d
B    e    f

当然我有10000行,所以手工做不是一个选择。我试图用sed或cat想象一个解决方案,但无法弄明白。还有其他人有想法吗?

1 个答案:

答案 0 :(得分:0)

Perl救援:

perl -ne 'if (/\t/) { print "$h\t$_" } else { chomp($h = $_) }' input.txt

说明:

  • -n逐行处理输入行
  • /\t/检查是否存在标签
  • 如果没有标签,则会在chomp中记住没有最终换行符($h)的行。
  • 如果有标签页,则会打印$h(最后记住"标题"),然后是标签和行本身。