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

如何让sed仅对两个*之间的空格添加转义符?

解决方法

你需要修改sed命令,只对两个*之间的空格添加转义符,同时保留*与@team1之间的空格原样。可以通过两次替换实现:

sed -i "" -e 's/ /\\ /g' -e 's/\\ \(@team1\)/ \1/g' "$SENTRY_OUTPUT_LOCATION"

原理说明

  1. 第一个替换规则 s/ /\\ /g:先全局将所有空格替换为 \ (带转义的空格),这会把所有空格都加上转义,包括*与@team1之间的空格。
  2. 第二个替换规则 s/\\ \(@team1\)/ \1/g:把误添加转义的\ @team1替换回原样 @team1,精准修正不需要转义的位置。

效果验证

处理后的内容会变成:

path:*/Tests/XCUITests/The\\ Tests/Test.Test.swift* @team1
path:*/Tests/XCUITests/The\\ Tests/SecondTest.Test.swift* @team1
path:*/Tests/XCUITests/TestActions/ThirdTest.swift* @team1

完全符合需求:两个*之间的空格已添加转义,最后一行*与@team1之间的空格保持原样。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 07:34:52