0

我正在通过 PowerShell 使用 Microsoft Defender for Endpoint rest API 运行以下高级搜索查询(一种 Kusto 查询)。

$query = "let letter = 'b';
          DeviceTvmSoftwareInventory
          | where SoftwareVendor startswith letter
          | project DeviceName, OSPlatform, SoftwareVendor, SoftwareName, SoftwareVersion"

它按原样工作,但我需要将一个变量传递给查询以针对一系列不同的值(即变量)而不是硬编码的字符串(即'b')运行查询。

我试图在查询之外定义一个 PowerShell 变量并在查询中引用它,但它不起作用。

如何将 PowerShell 变量传递给此查询?我该如何克服这个问题?

谢谢

4

1 回答 1

0

遍历值的数组。

$Values = @('a', 'b', 'c')
$Values |
    ForEach-Object {
        $query = "let letter = '$_';
            DeviceTvmSoftwareInventory
            | where SoftwareVendor startswith letter
            | project DeviceName, OSPlatform, SoftwareVendor, SoftwareName, SoftwareVersion"
    }
于 2021-09-14T15:31:06.630 回答