![]() |
Hola y bienvenida de los Estados Unidos a la UNIX y Linux Foros! Gracias por su visita y formar parte de nuestra comunidad global.
|
|
google unix.com
|
|||||||
| Foros | Registro | Reglas de los Foros | Enlaces | Álbumes | Preguntas más frecuentes | Lista de miembros | Calendario | Búsqueda | Puestos de hoy | Marcar Foros Como Leídos |
| Programación de scripts de shell y Plantear preguntas sobre KSH, CSH, SH, BASH, PERL, PHP, SED, AWK y otros scripts de shell y lenguajes de script de shell aquí. |
Más UNIX y Linux Foro Temas usted puede encontrar útiles
|
||||
| Hilo | Hilo para principiantes | Foro | Respuestas | Último mensaje |
| Reemplazar el archivo con sed | senthil_is | Programación de scripts de shell y | 5 | 11-20-2008 07:58 AM |
| sustituir las palabras en el archivo basado en otro archivo | kinmak | Programación de scripts de shell y | 9 | 05-07-2008 05:06 AM |
| Sustituir la palabra en un archivo | sasiharitha | UNIX for Dummies Preguntas y Respuestas | 3 | 12-05-2007 01:11 AM |
| serach y reemplazar el nombre de archivo en la ruta de acceso remoto en un archivo xml | kiranreddy1215 | Programación de scripts de shell y | 1 | 11-12-2007 11:31 AM |
| Reemplazar un valor en Archivo | lesstjm | Programación de scripts de shell y | 5 | 05-16-2007 01:20 PM |
![]() |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
|
|
||||
|
sustituir en el valor enésima xml
Hola a todos,
Tengo application.xml archivo con los siguientes contenidos <dependency> <groupId> fr.orange.portail.ear </ groupId> <artifactId> _AdminServicesEAR </ artifactId> <version> 1.0.0-20080521.085352-1 </ version> <tipo> oído </ tipo> </ dependencia> <dependency> <groupId> fr.orange.portail.ear </ groupId> <artifactId> _AdminServicesEAR </ artifactId> <version> 1.0.0-20080521.085352-1 </ version> <tipo> oído </ tipo> </ dependencia> <dependency> <groupId> fr.orange.portail.ear </ groupId> <artifactId> _AdminServicesEAR </ artifactId> <version> 1.0.0-20080521.085352-1 </ version> <tipo> oído </ tipo> </ dependencia> Quiero sustituir <tipo> enésima etiqueta de valor (es decir: la oreja) con "OK" utilizando sed o awk .... He intentado algo como esto para la sustitución de la primera aparición ... pero no funciona. ![]() gato application.xml | awk '/ \ <type\> \ (.* \) \ <\ / tipo \> / (n + \u003d 1) (if (n \u003d\u003d 1) (gensub (/ \ <type\> \ (.* \) \ </ tipo \> /, "OK", $ 0));) imprimir " ¿Puede uno, por favor dile a la sintaxis correcta de esta? Gracias y Saludos, Subin |
|
||||
|
Esto sustituye a la segunda aparición utilizando las variables n y s:
Código:
awk -v n=2 -v s="OK" '/<type>ear/&&n==++c{sub("ear",s)}1' file.xml
|
|
||||
|
Hola Franklin,
Muchas gracias por tu ayuda ... ¿Cómo puedo sustituir los valores entre la <tipo> </ tipo> etiqueta ... Esto no va a ser "oído" siempre ... por lo que no podemos hardcode la "oreja" valor ... Gracias en advane Subin |
|
||||
|
Puede utilizar una variable para los tipos, debería ser algo como esto:
Código:
awk -v n=2 -v s="<type>OK" -v t="<type>ear" '$0~t && n==++c{sub(t,s)}1' file
|
|
||||
|
Código:
awk '/<type>.*<\/type>/{n+=1; if(n==2){gsub(/<type>.*<\/type>/,"OK",$0)}}1' application.xml
|
![]() |
| Marcadores |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|