//Let's say we have an XML file named artists.xml in the current directory. We can post it to Solr using the following command line:
curl http://localhost:8983/solr/update -H 'Content-type:text/xml; charset=utf-8' --data-binary @artists.xml
==========================================
//To use the solr.body feature for the example above, you would do this:
curl http://localhost:8983/solr/update -F solr.body=@artists.xml
//If the XML is short, then you can just as easily specify it literally on the command line:
curl http://localhost:8983/solr/update -F stream.body=' <commit />'
//Solr accessing a local file:
curl http://localhost:8983/solr/update -F stream.file=/tmp/artists.xml
Deleting documents
You can delete a document by its unique field (we delete two documents here):
<delete><id>artist:11604</id><id>artist:11603</id></delete>
Or, you can delete all of the documents that match a particular Lucene/Solr query (the query syntax is not discussed in this chapter):
<delete><query>timestamp:[* TO NOW-12HOUR]</query></delete>
然后用curl命令提交doc给solr
优化:
curl "http://localhost:8080/solr/update?maxSegments=2&optimize=true"
curl http://localhost:8080/solr/update --data-binary "<optimize maxSegments=\"2\" waitFlush="true" waitSearcher="true" />" -H "Content-type:text/xml; charset=utf-8"
注:
Both commit and optimize take two additional boolean options that default to true:
<commit waitFlush="true" waitSearcher="true" />