gpt4 book ai didi

awk 前置和附加文件行

转载 作者:行者123 更新时间:2023-12-02 14:47:02 32 4
gpt4 key购买 nike

我想使用 awk 添加和附加文件的特定行。

例子:

假设我有一个包含 5 行的文件,我想 awk 第 3 行并将“hello”放在开头,在末尾放置“goodbye”。

示例文件。

1. foo
2. foo
3. foo
4. foo
5. foo

输出结果hello 3. foo goodbye并删除所有其他行 1、2、4、5,

我试过了 awk 'NR==3 {print $0" goodbye"}' <file>

这会在行后面加上再见,但我不知道如何在行前加上“你好”

我在命令中尝试了 BEGIN 和 END 但不确定如何处理 NR==3 ?

期望的输出应该是..

hello 3. foo goodbye

最终输出结果hello 3. foo goodbye并删除所有其他行 1、2、4、5,

最佳答案

能否请您尝试以下。仅打印所有行的第 3 行以及其他详细信息。

awk 'FNR==3{print "hello " $0 " goodbye";next} 1' Input_file

awk 'FNR==3{$0="hello " $0 " goodbye"} 1'  Input_file

如果您只想打印第 3 行,请尝试:

awk 'FNR==3{print "hello " $0 " goodbye"}' Input_file


如果您只想根据您的尝试使用 BEGINEND 打印第 3 行,请尝试以下操作。

awk 'BEGIN{ORS=" ";printf "hello "} FNR==3; END{printf("%s\n","goodbye")}' Input_file

关于awk 前置和附加文件行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58464660/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com