我需要在我使用的文件中的两行之后插入一个空行
cat rat hat
pot NOT lot
big big big
sit sit sit
awk '{print};(NR%2==0){print ""}'
cat rat hat
pot NOT lot
big big big
sit sit sit
实际上我的主要目标是每两行后插入一个新单词,但我无法解决。
我该怎么办,因为我在第三列的另一个文件中有 <= 6000 个名称,甚至在这一列中也很少有只有 .(点) 的名称。
其次,我不想要最后一行之后的空行。
答案1
这看起来很完美,每两行插入固定的 WORD
awk '{print}
(NR%2==0){printf "WORD\n"}'
我建议不要插入最后一行
awk 'NR>2 && (NR%2==1) {printf "WORD\n"}
{ print ; }'
行中的列数并不重要。
不过,只是猜测,这不是一个固定的词吗?一行字?最后一个 ?
awk 'NR>2 && (NR%2==1) {printf "%s\n",last}
{ print ; last=$NF ; }'
这将每隔一行打印最后一个单词。
替换$NF
为$3
得到第三个。
创建程序不仅仅是代码,而是能够向他人(和自己)描述要实现的目标。
答案2
使用 awk 我们可以在行号为偶数时打印新单词
awk '{{print $0}if(NR%2==0)print "word"}'