【问题标题】:Get Solr Cores via Powershell通过 Powershell 获取 Solr 内核
【发布时间】:2016-10-15 03:13:33
【问题描述】:

有没有办法使用 Powershell 来获取在我的本地 Solr 实例中运行的 Solr 内核列表?我正在运行 Solr 4.10.1,并且正在使用 Powershell 2.0。

我想创建一个核心名称的文本文件:

somecore1
somecore2
etc.

我可以通过点击以下 URL 以 XML 格式获取我的核心列表:http://localhost:8983/solr/admin/cores 返回 XML 的相关详细信息是:

<response>
  <lst name="responseHeader">
    <int name="status">0</int>
    <int name="QTime">2663</int>
  </lst>
  <str name="defaultCoreName">collection1</str>
  <lst name="initFailures"/>
  <lst name="status">
    <lst name="somecore1">
       <!-- Details removed -->
    </lst>
    <lst name="somecore2">
      <!-- Details removed -->
    </lst>
  </lst>
</response>

【问题讨论】:

    标签: powershell solr powershell-2.0 solr4


    【解决方案1】:

    首先,您需要将 XML 响应加载到 XML 变量中:

    [xml]$cores = (New-Object System.Net.WebClient).DownloadString("http://localhost:8983/solr/admin/cores")
    

    现在您可以使用以下语法输出核心列表:

    $cores.response.lst[2].lst | % {$_.name}
    

    此语法规定,“在 XML 文档中,获取根元素“response”的子元素,然后获取第三个子元素“lst”,然后遍历其子元素并输出“name”属性。

    要另存为文件,请重定向:

    $cores.response.lst[2].lst | % {$_.name} > c:\temp\cores.txt
    

    注意事项:

    【讨论】:

      猜你喜欢
      • 2014-03-04
      • 2020-10-19
      • 2014-07-15
      • 2021-01-26
      • 2012-08-09
      • 1970-01-01
      • 2016-09-10
      • 2019-06-05
      • 2019-01-13
      相关资源
      最近更新 更多