我有一个服务器列表,其中包含一行中的所有服务器名称。每个服务器都有如下所列的确切路径和文件:
$Computers = get-content "c:\temp\serverlist.txt"
foreach ($Computer in $Computers) {
select-string "F:\xxx\SmarXXXX\yyyyyyations\xxxxx\servers\data-sources.xml" `
-pattern "thisiswhatimsearchingfor"
}
我用 xxxxx 编辑了实际代码,因为其中一些可能被认为是敏感的。当我运行这个命令时,我得到了我正在寻找的字符串,但是没有指向哪个服务器返回此数据的链接。我基本上需要找出我的服务器列表中哪些服务器不包含请求的模式。
任何想法,将不胜感激。谢谢你的耐心。
编辑:我想出了以下内容,但它没有显示所需的输出。这仅返回字符串,但不返回从中提取字符串的服务器。谢谢您的帮助。我试图添加 where-object 以查看每个字符串的关联服务器。这失败了。
$Computers = get-content "c:\temp\serverlist.txt"
foreach ($Computer in $Computers) {
Select-String "F:\xx\xxxxxxPath\applications\yyyyyyy\servers\data-xxxx.xml" -pattern "render" | where {($_ -match "render")
}
}