Re: OT [Una de bash muy buena...]

2015-04-26 Por tema sio2
El Sun, 26 de Apr de 2015, a las 02:43:29AM +0200, Maykel Franco dijo:

  Una solución con grep:
 
  $ grep -oP '(?=number:)[0-9]+(?=)'$CADENA
  2705045091096
  2788156539794
  2748168531483
 
 Muchas gracias a todos, me funcionó.

De nada. Una sola puntualización, que se me ocurrió justamente después
de mandar el mensaje. Creo que habría sido mejor solución, y un pelín
más simple, esta:

$ grep -oP '(?=number:)[^]*'$CADENA

Así no obligamos a que el valor sean números.

-- 
   Y mis desdichas son como cerezas,
que voy por una y, de una en otra asidas,
vuelvo con todo un plato de tristezas.
  --- Tomé de Burguillos ---


-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/20150426073552.ga4...@cubo.casa



Re: OT [Una de bash muy buena...]

2015-04-26 Por tema sio2
El Sun, 26 de Apr de 2015, a las 12:26:46PM +0200, Maykel Franco dijo:

 Gracias José Miguel, buen apunte. Donde dices cadena le puedo meter
 también un fichero verdad?

Sí, pero entonces la redirección se hace con un único '':

$ grep 'patrón'  fichero

Y en el caso particular de grep, que admite que se le indique como
segundo argumento el fichero del que leer:

$ grep 'patrón' fichero

Un saludo.

-- 
   Todo el mundo se suicidaría si después de suicidarse se
pudiera seguir viviendo.
  --- Enrique Jardiel Poncela ---


-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/20150426134207.ga19...@cubo.casa



Re: OT [Una de bash muy buena...]

2015-04-26 Por tema Maykel Franco
El día 26 de abril de 2015, 9:35, José Miguel (sio2)
sio2.sio2+lista.deb...@gmail.com escribió:
 El Sun, 26 de Apr de 2015, a las 02:43:29AM +0200, Maykel Franco dijo:

  Una solución con grep:
 
  $ grep -oP '(?=number:)[0-9]+(?=)'$CADENA
  2705045091096
  2788156539794
  2748168531483
 
 Muchas gracias a todos, me funcionó.

 De nada. Una sola puntualización, que se me ocurrió justamente después
 de mandar el mensaje. Creo que habría sido mejor solución, y un pelín
 más simple, esta:

 $ grep -oP '(?=number:)[^]*'$CADENA

 Así no obligamos a que el valor sean números.

 --
Y mis desdichas son como cerezas,
 que voy por una y, de una en otra asidas,
 vuelvo con todo un plato de tristezas.
   --- Tomé de Burguillos ---


 --
 To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
 with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
 Archive: https://lists.debian.org/20150426073552.ga4...@cubo.casa


Gracias José Miguel, buen apunte. Donde dices cadena le puedo meter
también un fichero verdad?


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
https://lists.debian.org/CAJ2aOA9-mHta-CJLDHjaAwkvSP1cj1eTFu-h=wotwyaqeh6...@mail.gmail.com



Re: OT [Una de bash muy buena...]

2015-04-25 Por tema Maykel Franco
El 21 de abril de 2015, 18:38, José Miguel (sio2)
sio2.sio2+lista.deb...@gmail.com escribió:

 El Tue, 21 de Apr de 2015, a las 05:13:50PM +0200, Maykel Franco dijo:

  Buenas, llevo unas 2 h intentando realizar esto pero soy incapaz...
 
  Necesito de esta linea por ejemplo:
 
  [{type:07,number:2705045091096},{type:01,number:2788156539794}{type:08,number:2748168531483}

 Vaya por delante que eso parece json y lo podrías tratar con jshon,
 que tiene paquete en debian. De todos modos:

  Me gustaría sacar solo los numeros después de number: , por ejemplo, solo
  sacar esto:
 
  2705045091096
  2788156539794
  2748168531483
 

 Una solución con grep:

 $ grep -oP '(?=number:)[0-9]+(?=)'$CADENA
 2705045091096
 2788156539794
 2748168531483

 --
Hay dos sistemas de conseguir la felicidad: uno, hacerse
 el idiota; otro, serlo.
   --- Enrique Jardiel Poncela. --


 --
 To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
 with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
 Archive: https://lists.debian.org/20150421163813.gb5...@cubo.casa


Muchas gracias a todos, me funcionó. Alomejor sería más fácil como han
comentado por ahí con otro lenguaje de programación pero yo la verdad
es que es por comodidad uso bastante bash.

Imaginaros que además de esa linea, hay más lineas y solo quiero
filtrar los numeros que llevan la palabra consigo de number: ,
podría afinar más ese grep o ya me tendría que ir a otra opción?

Nuevamente, gracias.


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



Re: OT [Una de bash muy buena...]

2015-04-21 Por tema Adrià
On Tue, Apr 21, 2015 at 05:13:50PM +0200, Maykel Franco wrote:
Buenas, llevo unas 2 h intentando realizar esto pero soy incapaz...
Necesito de esta linea por ejemplo:

 [{type:07,number:2705045091096},{type:01,number:2788156539794}{type:08,number:2748168531483}
Me gustaría sacar solo los numeros después de number: , por ejemplo,
solo sacar esto:
2705045091096
2788156539794
2748168531483
He mirado con grep, awk , sed, cut... Soy incapaz...
Alguien podría hecharme un cable?
Gracias de antemano.

¿Y tiene que ser en Bash? Porque lenguajes como Python tienen módulos
para tratar Json que justamente sirven para esto.

Por cierto, recuerda enviar correos en texto plano.

-- 
Adrià García-Alzórriz
0x09494C14
You will attract cultured and artistic people to your home.


signature.asc
Description: Digital signature


Re: OT [Una de bash muy buena...]

2015-04-21 Por tema Zeque
El 04/21/2015 12:13 PM, Maykel Franco escribió:
 Buenas, llevo unas 2 h intentando realizar esto pero soy incapaz...
 
 Necesito de esta linea por ejemplo:
 
 [{type:07,number:2705045091096},{type:01,number:2788156539794}{type:08,number:2748168531483}
 
 Me gustaría sacar solo los numeros después de number: , por ejemplo, solo
 sacar esto:
 
 2705045091096
 2788156539794
 2748168531483
 
 He mirado con grep, awk , sed, cut... Soy incapaz...
 
 Alguien podría hecharme un cable?
 
 Gracias de antemano.
 

Maykel

Prueba con esto
echo
'[{type:07,number:2705045091096},{type:01,number:2788156539794}{type:08,number:2748168531483}'|
grep -o --color -E [0-9]{13}

El echo lo hice para simular la busqueda.
Grep -o es para que solo muestre lo que dió con la busqueda

Saludos!





-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/55366cb4.5040...@fibertel.com.ar



Re: OT [Una de bash muy buena...]

2015-04-21 Por tema Camaleón
El Tue, 21 Apr 2015 12:28:52 -0300, Zeque escribió:

 El 04/21/2015 12:13 PM, Maykel Franco escribió:
 Buenas, llevo unas 2 h intentando realizar esto pero soy incapaz...
 
 Necesito de esta linea por ejemplo:
 
 [{type:07,number:2705045091096},
{type:01,number:2788156539794}
{type:08,number:2748168531483}
 
 Me gustaría sacar solo los numeros después de number: , por ejemplo,
 solo sacar esto:
 
 2705045091096 2788156539794 2748168531483
 
 He mirado con grep, awk , sed, cut... Soy incapaz...
 
 Alguien podría hecharme un cable?
 
 
 Prueba con esto echo
 '[{type:07,number:2705045091096},
{type:01,number:2788156539794}
{type:08,number:2748168531483}'|
 grep -o --color -E [0-9]{13}
 
 El echo lo hice para simular la busqueda.
 Grep -o es para que solo muestre lo que dió con la busqueda

Ojo que ese filtro sólo sirve para campos con 13 caracteres numéricos.

Saludos,

-- 
Camaleón


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



Re: OT [Una de bash muy buena...]

2015-04-21 Por tema sio2
El Tue, 21 de Apr de 2015, a las 05:13:50PM +0200, Maykel Franco dijo:

 Buenas, llevo unas 2 h intentando realizar esto pero soy incapaz...
 
 Necesito de esta linea por ejemplo:
 
 [{type:07,number:2705045091096},{type:01,number:2788156539794}{type:08,number:2748168531483}

Vaya por delante que eso parece json y lo podrías tratar con jshon,
que tiene paquete en debian. De todos modos:

 Me gustaría sacar solo los numeros después de number: , por ejemplo, solo
 sacar esto:
 
 2705045091096
 2788156539794
 2748168531483
 

Una solución con grep:

$ grep -oP '(?=number:)[0-9]+(?=)'$CADENA
2705045091096
2788156539794
2748168531483

-- 
   Hay dos sistemas de conseguir la felicidad: uno, hacerse
el idiota; otro, serlo.
  --- Enrique Jardiel Poncela. --


-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: https://lists.debian.org/20150421163813.gb5...@cubo.casa



Re: OT [Una de bash muy buena...]

2015-04-21 Por tema Carlos Zuniga
2015-04-21 10:13 GMT-05:00 Maykel Franco maykeldeb...@gmail.com:
 Buenas, llevo unas 2 h intentando realizar esto pero soy incapaz...

 Necesito de esta linea por ejemplo:

 [{type:07,number:2705045091096},{type:01,number:2788156539794}{type:08,number:2748168531483}

 Me gustaría sacar solo los numeros después de number: , por ejemplo, solo
 sacar esto:

 2705045091096
 2788156539794
 2748168531483

 He mirado con grep, awk , sed, cut... Soy incapaz...

 Alguien podría hecharme un cable?

 Gracias de antemano.

Es eso json? esta correcto? (te falta una coma entre el 2do y 3er
elemento y el corchete de cierre al final)

Si el input es json válido, entonces puedes usar jq[0]:

echo 
'[{type:07,number:2705045091096},{type:01,number:2788156539794},{type:08,number:274816853
1483}]' | jq .[] | .number
2705045091096
2788156539794
2748168531483


[0] https://stedolan.github.io/jq/


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