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

如何编写通用sed命令替换test.js中的IP与端口?

通用sed命令替换IP与端口(兼容占位符和实际值)

完整命令示例

# 定义目标IP和端口
IP=172.15.33.101
HTTP_PORT=32231

# 执行批量替换
sed -i -e "s/@@NODE_IP@@\|\b\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}\b/$IP/g" \
       -e "s/@@NODE_PORT@@\|\b[0-9]\{1,5\}\b/$HTTP_PORT/g" test.js

正则逻辑说明

IP替换规则

正则表达式@@NODE_IP@@\|\b\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}\b会匹配两种内容:

  • 明确的占位符@@NODE_IP@@
  • 符合IPv4格式的实际IP地址(通过\b单词边界确保匹配完整的IP字符串,避免误替换其他包含IP片段的文本)

端口替换规则

正则表达式@@NODE_PORT@@\|\b[0-9]\{1,5\}\b会匹配两种内容:

  • 明确的占位符@@NODE_PORT@@
  • 1-5位数字的端口号(覆盖合法端口范围1-65535,用\b避免误替换更长数字串中的子部分)

优势说明

  • 无需区分文件当前是占位符状态还是已填充实际值的状态,一次命令即可覆盖两种场景
  • 合并两次sed调用为一次,提升执行效率
  • 用正则精准匹配目标内容,减少误替换风险

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 03:32:24