在特定位置合并两个文本文件,sed 或 awk
我有两个文本文件,我想将一个文本放在另一个文本文件的中间,我做了一些研究并找到了有关添加单个字符串的信息:
我在第二个文本文件中有一条名为 STUFFGOESHERE 的注释,所以我尝试了:
sed '/^STUFFGOESHERE/a file1.txt' file2.txt
sed: 1: "/^STUFFGOESHERE/a long.txt": 命令 a 需要 \ 后跟文本
所以我尝试了不同的方法,尝试根据给定的行放置文本的内容,但没有运气。
有什么想法吗?
I have two text files, I want to place a text in the middle of another, I did some research and found information about adding single strings:
I have a comment in the second text file called STUFFGOESHERE, so I tried:
sed '/^STUFFGOESHERE/a file1.txt' file2.txt
sed: 1: "/^STUFFGOESHERE/a long.txt": command a expects \ followed by text
So I tried something different, trying to place the contents of the text based on a given line, but no luck.
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这应该可以做到:
如果你想删除 STUFFGOESHERE 行:
如果你想就地修改 file2:(
或者也许
sed -i '' -e...
,我正在使用 GNU sed 4.1.5。)This should do it:
If you want to remove the STUFFGOESHERE line:
If you want to modify file2 in place:
(or maybe
sed -i '' -e...
, I'm using GNU sed 4.1.5.)如果您可以使用 ex 或 ed,请尝试
相同的脚本适用于 ed:
If you can use ex or ed, try
The same script works for ed:
从 Unix shell(bash、csh、zsh 等):
From a Unix shell (bash, csh, zsh, whatever):