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

如何用SED移除|startStart|与|endEnd|间的换行并替换为空格?

用SED解决标识间换行替换问题

直接用这条SED命令就能搞定:

sed '/|startStart|/{:a;N;/|endEnd|/!ba;s/\n/ /g}' 你的输入文件名.txt

命令拆解:

  • /|startStart|/{...}:定位到包含|startStart|的行,执行后续操作
  • :a:设置循环标记点a
  • N:把下一行内容追加到当前处理的行后面(合并多行到一个模式空间)
  • /|endEnd|/!ba:如果当前合并的内容里还没找到|endEnd|,就跳回标记a继续追加下一行
  • s/\n/ /g:把模式空间里所有的换行符替换成空格

测试示例:

把你当前的输出内容存到schedule.txt,执行命令后,就能得到你要的期望输出——|startStart| Wed Nov 15, 5:50 |endEnd|这种格式,其他行的换行不受影响。

如果是BSD环境(比如macOS)的sed,可能需要把|转义成\|,命令改成:

sed '/\|startStart\|/{:a;N;/\|endEnd\|/!ba;s/\n/ /g}' schedule.txt

内容的提问来源于stack exchange,提问作者Adam James Dietrick

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 20:02:05