我正在使用以下Powershell脚本进行搜索。我的脚本正在搜索整行。 (and
& or
条件都很好)
Get-Content $file.fullName | ? {
$_ -match $control -and $_ -notmatch '^\*' -and
($_ -match 'Call' -or $_ -match '=V' -or $_ -match '=S')
}
然而,我真正想要的是搜索特定列。
更具体。
a)仅在第10至13栏搜索CALL
(在我当前的脚本中,我在整行搜索Call
)
b)$ control,=V
,=S
只应从第16列开始搜索,直到我找不到空白字符。 (目前我正在搜索$ control,=V
,=S
整行)
示例输入:
CALL $control,abcd,i,2 XXXXXXX XXXX YYYYY
我当前的脚本我想在第16列中搜索$ control,=v
,=s
,直到我找不到空白(即直到值2
)。我不想在=V
=S
,XXXXXXX XXXX YYYYY
提前致谢
答案 0 :(得分:1)
这样的事可能有用:
Get-Content $file.fullName | ? {
$_.SubString(9,4) -eq 'CALL' -or $_ -match '^.{15}[^ ]*($control|=V|=S)'
}