首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在mac上使用sed插入一行并附加新行到文件中?

如何在mac上使用sed插入一行并附加新行到文件中?
EN

Stack Overflow用户
提问于 2014-02-28 08:51:38
回答 4查看 62关注 0票数 1

我想插入一个文本行,让我们对文件的第三行说"hello“。并且应该有一个新的附加行:

代码语言:javascript
运行
复制
1st
2nd
Hello

3rd

我该怎么做呢?

EN

回答 4

Stack Overflow用户

发布于 2014-02-28 09:52:12

使用awk非常简单

代码语言:javascript
运行
复制
$ cat file
1
2
3
4
5
6
代码语言:javascript
运行
复制
$ awk 'NR==3{print "hello\n"}1' file
1
2
hello

3
4
5
6

其中NR是行号。您可以将其设置为任何想要插入文本的数字。

票数 2
EN

Stack Overflow用户

发布于 2014-02-28 08:55:47

它必须是sed的吗?

代码语言:javascript
运行
复制
head -2 infile ; echo Hello ; echo ; tail +3 infile
票数 1
EN

Stack Overflow用户

发布于 2014-02-28 08:56:19

代码语言:javascript
运行
复制
$ sed '3s/^/Hello\n\n/' file.txt
1st
2nd
Hello

3rd

sed命令开头的3指定该命令应仅应用于第3行。因此,命令3s/^/Hello\n\n/将替换为"Hello“,并在第3行的开头(^匹配一行的开头)添加两个新行。否则,文件将保持不变。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22084016

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档