如何在 select-string powershell 中提取匹配行后的特定行
how to extract specific line after matched line in select-string powershell
我想在一个块中或在匹配的字符串之后搜索文本,但不是立即搜索
例如:从 'ipconfig' 的输出中,我只想提取 WiFi 部分中的 IPv4 地址
ipconfig | sls -Pattern "Wifi" -Context 0, 4
returns 匹配的字符串和它后面的 4 行,但我只想要第 4 行和“-Pattern 'IPv4'” returns 来自所有适配器的所有 ips
如何只提取 Wifi IPv4?
Select-String
返回的输出对象将有一个 Context
属性,它又包含一个 PostContext
属性 的对象包含匹配行之后的行:
ipconfig | sls -Pattern 'Wifi' -Context 0,4 |ForEach-Object { $_.Context.PostContext[-1] }
我想在一个块中或在匹配的字符串之后搜索文本,但不是立即搜索
例如:从 'ipconfig' 的输出中,我只想提取 WiFi 部分中的 IPv4 地址
ipconfig | sls -Pattern "Wifi" -Context 0, 4
returns 匹配的字符串和它后面的 4 行,但我只想要第 4 行和“-Pattern 'IPv4'” returns 来自所有适配器的所有 ips
如何只提取 Wifi IPv4?
Select-String
返回的输出对象将有一个 Context
属性,它又包含一个 PostContext
属性 的对象包含匹配行之后的行:
ipconfig | sls -Pattern 'Wifi' -Context 0,4 |ForEach-Object { $_.Context.PostContext[-1] }