PowerShell - 将线属性压缩到管道中

时间:2017-08-28 12:49:36

标签: powershell

我是PowerShell的新手,我有以下示例代码和输出来说明我的问题:

select-string "$env:appdata\..\Local\test\*.ini" -pattern "example_adjustment=" | select filename, line | sort-object -property line -Descending >> file.txt

Filename                                                                        Line                                                                           
--------                                                                        ----                                                                           
test1.ini                                                                       example_adjustment="4.2"                                                       
test4.ini                                                                       example_adjustment="11.0000000"                                                
test2.ini                                                                       example_adjustment="1.20"                                                      
test5.ini                                                                       example_adjustment="0.90"                                                      
test3.ini                                                                       example_adjustment="0.90"    

我希望能够修改输出,以便" Line"值仅以数字形式显示,并以浮动格式显示,以便正确执行排序。最终结果是我将该信息附加到文本文件中。

我如何修改Line属性?我看到一篇关于正则表达式的帖子,但我似乎无法使用正则表达式直接从管道编辑。

1 个答案:

答案 0 :(得分:1)

  

我似乎无法使用正则表达式直接从管道编辑。

你当然可以! : - )

在计算属性中使用-replace regex运算符:

... |Select filename,@{Name='Line';Expression={$_.Line -replace 'example_adjustment="([^"]*)"','$1'}}