如何将文本文件的第一行复制到所有其他行的开始或结束?

如何将文本文件的第一行复制到所有其他行的开始或结束?

我目前正在编辑多个大型文本文件(可能有 500 个不同的文本文件),并且需要将文本文件的第一行复制到所有其他行的开始或结束
例如这是我的一个文本文件:

1996
word
character
word2
character2
browser
website

现在我想将第一行复制到另一行的第一行:

1996,word
1996,character
1996,word2
1996,character2
1996,browser
1996,website

注意:1)每个文件的行数不同 2)每个文件的第一行不一样,可能包含年份或年份加月份名称(例如:2000 年 4 月或 2005 年 3 月)3)将第一行复制到所有内容的开头后,应删除第一行 4)第一行应以分号与其他行内容分隔

现在哪个脚本或正则表达式可以帮助我?

答案1

您可以awk为此目的使用:

awk '{if (NR==1) a=$0 ; else print a","$0}' input_file

因为a变量获取整个第 1 行,所以可以有任何文本。

[romeo@rhel01 tmp]$ cat qq
1996 May
word
character
word2
character2
browser
website
[romeo@rhel01 tmp]$  awk '{if (NR==1) a=$0 ; else print a","$0}' qq
1996 May,word
1996 May,character
1996 May,word2
1996 May,character2
1996 May,browser
1996 May,website

相关内容