我想从一个文件中捕获一组连续的5行,在我的条件匹配之后,在powershell中使用for每个循环


$ourfilesdata = Get-Content "P:myfilesdetails.txt" 
foreach ($i in $ourfilesdata )
{
if ( $i -match 'Mobileb') {continue)
{
Write-Output "$i"
}
}

**我的输入大概有50行**

aaaaaaa
bbbbb
Request
Mobile
Sim
datacard
internet
ccccccc
dddddddd
fffffff

mobile
sim
datacard
internet

注意:-这些输入行在我的文件

中是水平样式的

我不太明白你想要完成什么,但看看这是否是你想要的:

#Current working directory
$PSScriptRoot = Split-Path -Parent -Path $MyInvocation.MyCommand.Definition
$MainPath = $PSScriptRoot += ""
$ourfilesdata = $MainPath + "Randomc.txt"
$ourfilesdata
$search = '\Mobile\b'
$GetLine = Get-Content $ourfilesdata | Select-String $search
$GetLine.LineNumber
$GetLine
Select-String  "P:myfilesdetails.txt" -Pattern 'Requestb' -Context 0,5 |
Foreach-Object { $_.Line,$_.Context.PostContext}

这将100%的工作,谢谢我以后:-)

最新更新