首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在每行末尾添加文本,用sed或awk从行中添加文本?

如何在每行末尾添加文本,用sed或awk从行中添加文本?
EN

Stack Overflow用户
提问于 2014-08-29 08:28:46
回答 2查看 50关注 0票数 0

例如,我有下一条短信:

代码语言:javascript
复制
before1/endpoint-1
before2/endpoint-2
before3/endpoint-3

我想输出下一个:

代码语言:javascript
复制
before1/endpoint-1=somethingelse/endpoint-1
before2/endpoint-2=somethingelse/endpoint-2
before3/endpoint-3=somethingelse/endpoint-3

因此,我想在每一行的末尾添加=somethingelse/,然后从后面的行中获取相同的端点。

我知道我可以将=somethingelse/添加如下:

代码语言:javascript
复制
sed -i 's/$/=somethingelse\//' textfile

但是如何在端点后面添加端点的部分呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-29 08:32:14

通过苏打,

代码语言:javascript
复制
$ sed 's~\([^\/]*\)$~\1=somethingelse/\1~' file
before1/endpoint-1=somethingelse/endpoint-1
before2/endpoint-2=somethingelse/endpoint-2
before3/endpoint-3=somethingelse/endpoint-3
票数 4
EN

Stack Overflow用户

发布于 2014-08-29 08:38:26

有很多方法可以达到你的目标,例如awk一条龙:

代码语言:javascript
复制
awk -F'/' '$0=$0"=somethingelse" FS $2'

或苏黎世:

代码语言:javascript
复制
sed 's#/.*#&=somethingelse&#'
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25564456

复制
相关文章

相似问题

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