Re: [OT] duda de bash - subcadena
El día 18 de julio de 2012 23:00, Pablo Jiménez pejim...@vtr.net escribió: sed -n '/::extNames/s/^..*::extNames\.([^ ][^ ]*) /\1/' echo UCD-SNMP-MIB::extNames.5 = STRING: chkraid | sed -n '/::extNames/s/^..*::extNames\.([^ ][^ ]*) /\1/' sed: -e expresion #1, caracter 46: invalid reference \1 on `s' command's RHS Saludos. -- [o - - - -- - (\ | u d t ( \_(' c c s (__(=_) s o ? -= -- 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/cab-01r4vqa-2tjvsfk+6h3xh8ffk8pybbhvh5_-i2l2y6p_...@mail.gmail.com
Re: [OT] duda de bash - subcadena
2012/7/19 Mariano Cediel mariano.ced...@gmail.com: El día 18 de julio de 2012 23:00, Pablo Jiménez pejim...@vtr.net escribió: sed -n '/::extNames/s/^..*::extNames\.([^ ][^ ]*) /\1/' echo UCD-SNMP-MIB::extNames.5 = STRING: chkraid | sed -n '/::extNames/s/^..*::extNames\.([^ ][^ ]*) /\1/' sed: -e expresion #1, caracter 46: invalid reference \1 on `s' command's RHS A mi me funciona con echo UCD-SNMP-MIB::extNames.5 = STRING: chkraid | sed 's/.*Names\.\([[:digit:]]\+\).*/\1/' -- 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/CAESVxputKbE3A=s54s1WqNrQ2dk04E8VMffWw=w0aejrg0n...@mail.gmail.com
Re: [OT] duda de bash - subcadena
On Thu, Jul 19, 2012 at 08:13:52AM +0200, Mariano Cediel wrote: El día 18 de julio de 2012 23:00, Pablo Jiménez pejim...@vtr.net escribió: sed -n '/::extNames/s/^..*::extNames\.([^ ][^ ]*) /\1/' echo UCD-SNMP-MIB::extNames.5 = STRING: chkraid | sed -n '/::extNames/s/^..*::extNames\.([^ ][^ ]*) /\1/' sed: -e expresion #1, caracter 46: invalid reference \1 on `s' command's RHS El flag -n lo puse demás y faltó el ``escaping'' de los paréntesis en la subexpresión. Por eso el error de 'invalid reference \1'. La versión correcta debiera ser: sed '/::extNames/s/^..*::extNames\.\([^ ][^ ]*\) ..*$/\1/' No ocupé el digits, dado que el formato en que se imprime la información es uniforme: Tras extNames., viene el número y luego el espacio. Basta entonces capturar los caracteres que no son un espacio en blanco antes de que ocurra = en la línea. Saludos. -- Pablo Jiménez -- 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/20120719155222.gb3...@example.net
Re: [OT] duda de bash - subcadena
On Tue, Jul 17, 2012 at 11:14:09AM +0200, Mariano Cediel wrote: Necesito procesar esta cadena de texto--- UCD-SNMP-MIB::extNames.1 = STRING: chkraid -- para que devuelva 1 UCD-SNMP-MIB::extNames.5 = STRING: chkraid -- idem 5 UCD-SNMP-MIB::extNames.10 = STRING: chkraid -- idem 10 UCD-SNMP-MIB::extNames.12 = STRING: chkraid -- idem 12 etc Un saludo y muchas gracias. (que ya llevo un rato y no me sale ) Hola: sed -n '/::extNames/s/^..*::extNames\.([^ ][^ ]*) /\1/' Saludos. -- Pablo Jiménez -- 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/20120718210005.ga3...@example.net
Re: [OT] duda de bash - subcadena
2012/7/17 Mariano Cediel mariano.ced...@gmail.com: Necesito procesar esta cadena de texto--- UCD-SNMP-MIB::extNames.1 = STRING: chkraid -- para que devuelva 1 UCD-SNMP-MIB::extNames.5 = STRING: chkraid -- idem 5 UCD-SNMP-MIB::extNames.10 = STRING: chkraid -- idem 10 UCD-SNMP-MIB::extNames.12 = STRING: chkraid -- idem 12 etc No lo uses como regla general, pero en tu caso concreto sirve: | grep -o '[[:digit:]]\+' -- 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/CAL5yMZRekkWh=ng3bhsm8qneqp0wzzuyeokqtcdvfhqrqnp...@mail.gmail.com