如何用PowerShell单条命令提取--configuration/-c后的配置值?
单条PowerShell命令提取配置参数值
针对从文本文件中匹配--configuration或-c参数,并提取紧随其后的目标字符串(如Release、Dev)的需求,可以用这条PowerShell命令实现:
Get-Content .\target.txt | Select-String '(?:--configuration|-c)\s+"?([^"\s]+)"?' | ForEach-Object { $_.Matches.Groups[1].Value }
命令逻辑说明
Get-Content .\target.txt:替换target.txt为你的实际文件名,读取文件内容Select-String的正则表达式部分:(?:--configuration|-c):匹配两种参数格式,不捕获该部分\s+:匹配参数与目标值之间的任意空格"?":兼容目标值带双引号或不带双引号的情况([^"\s]+):捕获目标值,直到遇到双引号或空格为止
ForEach-Object:提取正则捕获到的目标值并输出
如果文件中存在多个符合条件的参数,会逐个输出对应的目标值;无匹配时则不会输出任何内容。
内容的提问来源于stack exchange,提问作者wehelpdox
相关产品推荐
相关产品推荐

