You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用sed复制逗号前字符串并追加到文件行内斜杠之后

使用sed实现文本处理的方案

直接运行对应命令即可完成「复制每行逗号前字符串、追加到同一行斜杠后」的需求:

  • 预览处理结果(不修改原文件):
sed -E 's/^([^,]+)(.*\/)$/\1\2\1/' 待处理文件路径
  • 直接修改原文件:
sed -i -E 's/^([^,]+)(.*\/)$/\1\2\1/' 待处理文件路径

命令原理说明

  • -E参数:启用扩展正则匹配模式,简化分组语法,不需要给括号加转义符
  • 正则匹配逻辑拆解:
    • ^([^,]+):从行首起始位置匹配,捕获第一个逗号前的所有字符(即需要复制的目标字符串),存储为第1个捕获组
    • (.*\/)$:匹配逗号后所有内容直到行尾的斜杠字符,存储为第2个捕获组
    • 替换规则\1\2\1:按顺序拼接「第1组内容 + 第2组内容 + 第1组内容」,刚好实现将复制的字符串追加到斜杠后的效果

效果验证

使用提供的示例原始内容执行命令,输出结果完全符合预期:

text1,Information /text1
text2,Information /text2
text3,Information /text3

适配提示:如果文本中斜杠不在行尾、或单行存在多个斜杠,上述命令默认会把内容追加到每行最后一个斜杠之后。如果需要固定追加到第一个斜杠之后,把正则替换为s/^([^,]+)([^\/]*\/)/\1\2\1/即可。

内容的提问来源于stack exchange,提问作者Hans

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 23:09:23