Foros del Web » Administración de Sistemas » Unix / Linux »

Grep para obtener cadenas entre $$

Estas en el tema de Grep para obtener cadenas entre $$ en el foro de Unix / Linux en Foros del Web. Buenas, Para obtner estas cadenas he utilizado el siguiente comando: grep '[$$].*[$$]' *.jsp Y ha funcionado bien de bien, pero obtengo toda la linea donde ...
  #1 (permalink)  
Antiguo 01/07/2013, 04:23
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 14 años, 3 meses
Puntos: 0
Grep para obtener cadenas entre $$

Buenas,

Para obtner estas cadenas he utilizado el siguiente comando:

grep '[$$].*[$$]' *.jsp

Y ha funcionado bien de bien, pero obtengo toda la linea donde aparece la cadena entre dolares, y solo quiero la cadena, estoy probando este:

grep -o '[$$].*[$$]' *.jsp

Pero me da el mensaje grep: illegal option -- o


Se os ocurre algo?

Por otra parte, he exportado el resultado del primer grep a un .txt, quizas con una expresión regular en algún programa tipo Notepadd++ pueda obtener solo las cadenas. Gracias de antemano.
  #2 (permalink)  
Antiguo 01/07/2013, 08:51
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Grep para obtener cadenas entre $$

Primero que nada, "[$$]" no quiere decir "dos $$" sino "un caracter $".
Para buscar "$$", pon dos $ escapados (para que no se los considere como marca de fin de línea) o como [$][$].

Por otro lado, la opción -o es específica de GNU Grep, es perfectamente posible que no la tengas disponible. Se puede simular con la siguiente línea de sed:

Código BASH:
Ver original
  1. sed -n 's/^.*\$\$\(.*\)\$\$.*$/\1/p' *.jsp


Saludos.

Etiquetas: cadenas, ip
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:45.