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

使用AWK提取Payload文件中name字段的精确值

用AWK提取Payload中name字段的值

这里有几个实用的AWK方案,帮你精准提取name字段对应的值——不管这个值是纯字母、字母数字组合,还是10位以内的字符串都能搞定:

方案1:正则捕获(最鲁棒,推荐)

这种方法通过正则捕获组直接匹配"name": "值"的格式,不管name字段在文本的哪个位置都能生效:

awk 'match($0, /"name": "([^"]+)"/, result) {print result[1]}' payload.txt

原理说明:

  • match($0, /"name": "([^"]+)"/, result):扫描整行文本,匹配"name": "xxx"的模式,把捕获到的xxx([^"]+会匹配除双引号外的任意字符,完美贴合你的值规则)存入数组result
  • print result[1]:输出捕获组里的内容,也就是你要的name字段值

方案2:分隔符拆分(适合格式固定的场景)

如果你的Payload格式固定,name字段的位置不会变,可以用双引号作为分隔符来拆分文本:

awk -F'"' '/"name":/ {print $8}' payload.txt

原理说明:

  • -F'"':把双引号设为字段分隔符
  • /name":/:只处理包含"name":的行
  • print $8:你的示例文本拆分后,目标值正好是第8个字段(可以自行数拆分后的字段顺序验证)

测试示例

假设你的payload.txt内容是:

"mobileAppTunnel": "disabled","name": "t1"

运行任意一个命令,都会输出:

t1

如果name的值换成abc123或者test123456(10位),也能正确提取对应的值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:37:01