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

如何通过PowerShell正则从日志文件中提取版本号v1.0.2

PowerShell提取版本号方法

针对你提供的日志内容:

2022-09-08T10:52:38.0802281Z Downloading git::ssh://git@ssh.dev.azure.com/v3/basf-terraform/Terraform_modules/azure_private_endpoint?ref=v1.0.2 for resuc_dls1_pep1...

这里提供几种适合新手的PowerShell提取v1.0.2的方法:

方法1:用Select-String匹配正则

直接读取日志文件后匹配提取:

Get-Content .\你的日志文件名.txt | Select-String -Pattern 'ref=(\w+\.\w+\.\w+)' | ForEach-Object { $_.Matches.Groups[1].Value }

解释:Select-String通过正则ref=(\w+\.\w+\.\w+)定位ref=后的版本号,Groups[1]就是捕获到的目标内容。

方法2:拆分字符串分步提取

通过拆分字符逐步筛选:

# 读取文件内容到变量
$logLine = Get-Content .\你的日志文件名.txt
# 按?ref=拆分取后半段
$refSegment = $logLine -split '\?ref=' | Select-Object -Index 1
# 按空格拆分取第一段就是版本号
$version = $refSegment -split ' ' | Select-Object -Index 0
# 输出结果
$version

方法3:正则直接匹配单条文本

如果直接处理单条日志字符串:

$logText = '2022-09-08T10:52:38.0802281Z Downloading git::ssh://git@ssh.dev.azure.com/v3/basf-terraform/Terraform_modules/azure_private_endpoint?ref=v1.0.2 for resuc_dls1_pep1...'
[regex]::Match($logText, 'ref=(v\d+\.\d+\.\d+)').Groups[1].Value

解释:用正则精准匹配ref=开头的版本格式,直接提取捕获的版本内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 18:50:29