El día 13 de abril de 2010 13:23, Camaleón <noela...@gmail.com> escribió:
> El Tue, 13 Apr 2010 12:37:18 +0200, Alwar escribió:
>
>> Hola.
>> Tengo un archivo xml con varios nombres de archivos como este (tiene mas
>> cosas pero esta es la parte que no puedo sacar):
>>
>> <practica nombre="Practica1">
>>
>>    <fichero>fichero1</fichero>
>>
>>    <fichero>fichero2</fichero>
>>
>>    <fichero>fichero3</fichero>
>>
>>    <fichero>fichero4</fichero>
>>
>>    <fichero>fichero5</fichero>
>>
>> </practica>
>>
>> Y quiero que el programa xmlstarlet me muestre todos los nombres de
>> fichero y así poder meterlos en un array en bash para luego comprobar
>> que existan esos archivos.
>> Utilizando el comando   ""xmlstarlet sel -t -m "/practica" -v fichero
>> asignatura.xml""  solo consigo que me muestre "fichero1" pero yo quiero
>> mostrar todos, o alguna forma de que me muestre los sucesivos y así
>> poder leer todos.
>
> Te puedo decir cómo hacerlo con una hoja de transformación (XSLT) que
> puedes enlazar al XML:
>
> ***
> <?xml version="1.0"?>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
> <xsl:template match="/">
> <xsl:for-each select="practica/fichero"><xsl:value-of select="."/>
> </xsl:for-each>
> </xsl:template>
> </xsl:stylesheet>
> ***
>
> Pero ese programa (xmlstarlet) no sé cómo va O:-)
>
> Saludos,
>
> --
> Camaleón

Gracias Camaleón por tu hoja de estilos, me dio la pista para sacar el
comando correcto.

Concretamente yo necesitaba
xmlstarlet sel -t -m practica/fichero -v "." -n archivo.xml
Ya que la opcion -m equivale al for-each de tu xsl y el -v al
value-of. A mi no me salia porque no se me ocurrio poner con el -v "."
que es lo que tu pusiste en tu xsl.
Saqué mas información de aquí:
http://mcs.une.edu.au/doc/xmlstarlet-1.0.1/xmlstarlet-ug.html#id1639281

Problema resuelto!
Muchas gracias a todos!



-- 
Alvaro Guzmán
http://alwar.mainfri.com


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/x2keffc99d11004131133ue9e20a1ds218f880d77026...@mail.gmail.com

Responder a