Solr: se puede usar post.jar para publicar archivos de forma recursiva dentro de la carpeta y subcarpeta

Si quisiera publicar todos los archivos xml en una carpeta, uso post.jar.

java -jar post.jar * .xml

En caso de que quisiera publicar los archivos de forma recursiva (es decir, publicar archivos xml en el nivel de subcarpeta, también hay alguna forma de lograrlo).

preguntado el 27 de agosto de 11 a las 17:08

3 Respuestas

Si está en un sistema similar a Unix (OSX o Linux), puede hacer algo como esto:

find . -name \*xml | xargs java -jar post.jar 

Eso encontrará todos los archivos .xml en o debajo del directorio actual ('.') Y los pasará como parámetros al java -jar post.jar mando.

find es increíblemente opaco, pero muy útil para este tipo de cosas.

Respondido 28 ago 11, 04:08

Hola, estoy ejecutando mi aplicación en la plataforma Windows. ¿Hay alguna forma de lograr esto sin el uso de Cygwin? Puede ser algún comando. - Balaji.NS

Por favor, piénselo dos veces antes de usar cosas debajo del /ejemplo directorio de Solr. Yo uso Solr de Tomcat (en lugar del Jetty incrustado en el start.jar) y utilizo URLLIB2 en Python para enviar datos a Solr. (Jetty es un software de nivel de producción, así que no se preocupe demasiado por eso).

Entonces, para cargar archivos, considere escribirlo en tu lenguaje de programación favorito. Puede implementar la recursividad de carpeta usted mismo. Para publicar archivos, necesita libCURL , que puede enviar HTTP GET, POST de formulario, POST de varias partes, etc. El programa AC que usa libCURL no necesita más de 8 líneas para POST un archivo. Los enlaces CURL existen para todos los lenguajes principales, por lo que puede reciclar cosas de libCURL escritas en C a PHP, por ejemplo.

Respondido 29 ago 11, 12:08

¡Sí, si puedes!

Solo necesita agregar el indicador -Drecursive.

java -Drecursive -jar post.jar *

Para obtener más opciones para las banderas y el uso, simplemente use:

java -jar post.jar -h

Respondido el 07 de Septiembre de 14 a las 14:09

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.