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

如何修改sed命令仅为第3列中匹配'is'模式的文本添加颜色

修改方法

原命令是直接给第3列整列套绿色,要只给第3列里匹配is的内容上色,只要把sed的替换逻辑改成先锚定前两列的位置,只在第3列范围内做匹配替换就行,不会误改其他列的内容。

直接用改好的命令即可:

green=$'\033[1;32m';off=$'\e[m';echo -e "num co1umn1 column2 column3\n=== === === ===\n1 this is me\n2 that is you"|column -t|sed -E "s/^(([^[:blank:]]+[[:blank:]]+){2})([^[:blank:]]*)is/\1\3$green is$off/";unset green off

替换逻辑说明

  • 开头的正则^(([^[:blank:]]+[[:blank:]]+){2})会把每行前两列和列之间的空白完整捕获,这部分内容保持原样,不会做任何修改
  • 剩余匹配逻辑只会在第3列范围内查找is字符串,给匹配到的内容加绿色转义标记,既不会改动其他列的内容,也不会影响第3列里不匹配is的部分
  • 后续如果需要更换匹配规则,直接把替换逻辑里的is换成目标字符串或者对应正则即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 08:27:04