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

如何在props.xml中根据name属性提取对应value值并存储到变量

提取props.xml中指定property的value值(grep后切割方法)

针对props.xml中类似 <property name="property.first" value="some_value_here"/> 的行,已知property.first/property.second为唯一标识,可通过以下grep结合文本切割的方法提取对应的some_value_here:

方法1:grep + cut

以双引号为分隔符,直接截取目标字段:

# 提取property.first对应的value
grep 'property.first' props.xml | cut -d '"' -f4

# 提取property.second对应的value
grep 'property.second' props.xml | cut -d '"' -f4

原理:cut -d '"' 将每行按双引号拆分,第4个字段正好是value属性的内容。

方法2:grep + sed

用正则匹配捕获目标内容:

# 提取property.first对应的value
grep 'property.first' props.xml | sed 's/.*value="\([^"]*\)".*/\1/'

# 提取property.second对应的value
grep 'property.second' props.xml | sed 's/.*value="\([^"]*\)".*/\1/'

原理:正则表达式匹配value="之后到下一个双引号前的所有内容,通过捕获组提取并替换整行。

方法3:grep + awk

同样以双引号为分隔符,打印目标字段:

# 提取property.first对应的value
grep 'property.first' props.xml | awk -F '"' '{print $4}'

# 提取property.second对应的value
grep 'property.second' props.xml | awk -F '"' '{print $4}'

原理:awk -F '"' 指定双引号为分隔符,$4对应拆分后的第4个字段,即value的内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 15:25:19