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

sed替换指定模式为NULL后删除空行的语法问题求助

Sed 替换指定模式并删除空行的正确写法
  • 你之前的命令错误在于大括号的用法:sed的大括号是用来组合多个命令的,不能直接嵌套在s命令里。正确的写法是把替换命令和删除空行命令放在大括号内,用分号分隔。
  • 针对你的需求,正确的sed命令有两种写法:

写法一:分两次指定命令

sed -e 's/<"patern">//g' -e '/^$/d' file.txt

写法二:用大括号组合命令

sed '{s/<"patern">//g; /^$/d}' file.txt

命令说明:

  1. s/<"patern">//g:全局替换所有匹配到的指定模式为空字符串
  2. /^$/d:删除替换后变成完全空的行(^$匹配空行)

如果你的模式包含正则元字符(比如.、*、+等),需要在这些字符前加反斜杠\进行转义,避免被sed当作正则语法解析。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 04:35:47