Select-String在Powershell中不起作用

Bla*_*rai -1 windows powershell scripting

我试图从referencePowershell中的对象中拉出一个字符串,但我没有成功.这是我正在尝试的:

Select-String -Pattern "ro.product"  -InputObject $output.Value 
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

Select-String -InputObject $output.Value  -Pattern "ro.product" 
Run Code Online (Sandbox Code Playgroud)

$output.value是Android手机的构建属性列表.我已经使用该.getType()函数来确定类型是什么,并且$output.value是一个字符串,并且$output是一个reference.我是Powershell的新手,我希望有人可以为此提供一些指导.我看到的每个引用都String-Select涉及到pipe-lining并且因为我$output从函数设置,它似乎不起作用(流水线).

更新:源文本的示例

# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=IMM76D
ro.build.display.id=N861V1.0.0B09
ro.build.version.incremental=20121128.160026.30230
ro.build.version.sdk=15
# etc ...
Run Code Online (Sandbox Code Playgroud)

x0n*_*x0n 7

尝试:

$output.value | select-string -simplematch -pattern "ro.product". 
Run Code Online (Sandbox Code Playgroud)

如果这不起作用,那么$ output.value可能不包含您认为它包含的内容.源文件也可能使用unix行结尾(LF),在这种情况下,它可能被视为单行.将其转换为使用CRLF并再试一次.

  • 你应该指定`SimpleMatch`还是在模式中使用转义?我*怀疑*当前的答案也会匹配"roxproduct",例如,如果模式被视为正则表达式. (2认同)