powershell从文本文件返回值

时间:2012-07-25 13:31:55

标签: powershell

我有一个包含用户ID的文本文件。

用户A 用户B 用户C 等等 此文本文件每天都会根据需要进行更改。

Q, 如何使用powershell从文本文件中的用户返回某些属性?我正在寻找的是

userID,电子邮件地址,SIP,ExchangeServer,StorageGroup,数据库,LegacyExchangeDN等....

感谢所有帮助......

由于 Bunnioch

1 个答案:

答案 0 :(得分:0)

所以假设你有一个名为test.txt的文本文件,就像这样

1,bob,QA
2,Fred,Dev
3.John,IT
11,rob,dev

您可以使用select-string轻松获取信息

 PS C:\Users\Adam\Documents> Select-String 2 test.txt

 test.txt:2:2,Fred,Dev

但是这有一些限制,因为如果我们使用1我们会匹配两个记录

,那么模式是一个正则表达式
PS C:\Users\Adam\Documents> Select-String 1 test.txt

test.txt:1:1,bob,QA
test.txt:4:11,rob,dev

这可以通过更复杂的正则表达式解决,但另一种选择是将where-object与get-content结合使用并提供条件

get-content test.txt| where-object {$_.split(",")[0] -eq 1 }

在这种情况下,我已阅读每一行并通过拆分它然后比较第一个元素

来评估该行