Solr使用cURL删除索引

时间:2013-07-19 18:14:51

标签: curl solr

我正在尝试删除Solr中的所有记录。我可以通过发布以下网址在浏览器中执行此操作

http://localhost:8983/solr/update?stream.body=<delete><query>*:*</query></delete>

但是我希望使用命令行来完成它。我已经安装了cURL并测试过命令行是否理解curl命令。但是当我发出以下命令时

curl http://localhost:8983/solr/update --data '<delete><query>*:*</query></delete>' -H 'Content-type:text/xml; charset=utf-8' 

我收到错误

  

&LT;此时出人意料

我尝试了使用单引号或双引号来包装xml的各种不同变体,但似乎没有任何效果。任何人都可以放弃任何光明吗?

提前致谢。

3 个答案:

答案 0 :(得分:1)

以下是如何使用curl删除solr索引的示例:

https://gist.github.com/nz/673027

对于Windows,请查看:

How to post XML data with cURL using cmd in windows 7?

答案 1 :(得分:1)

您错过了添加commit=true参数。

以这种方式更简单,您所要做的就是HTTP GET请求。

curl "http://localhost:8983/solr/collection1/update?commit=true&stream.body=<delete><query>*:*</query></delete>"

答案 2 :(得分:0)

尝试这些参数

commit=true -H "Content-Type: text/xml" --data-binary '<delete><query>*:*</query></delete>'