|
Ver temas sin respuesta | Ver temas activos
Foros Linux » Desarrollo » Programación
Página 1 de 1
|
[ 11 mensajes ] |
|
| Autor |
Mensaje |
elistraus

Forista Nuevo
Registrado: Vie Nov 04, 2011 2:14 pm Mensajes: 5
|
 Publicado: Vie Nov 04, 2011 2:32 pm |
|
|
Saludos a toda la comunidad, Quiero ver si me pueden ayudar en esto: Tengo un variable que es una cadena y quiero buscar una palabra dentro de ella, con que comando la puedo hacer, ejemplo:
"me he registrado recien al este foro que es al 100%,,, muy bueno excelente espero aprender -- mucho --"
la cadena tiene de todo, saltos de lineas, espacion y caracteres especiales, entonces lo que yo quiero es rescatar el "100%" y almacenarla en una variable, he tratado con sed, con el cut y no hayo como almacenarla,,,
Saludos!!!
|
|
|
|
 |
fpuga

Forista Mayor
Registrado: Vie Ago 24, 2007 11:00 pm Mensajes: 794 Ubicación: Galicia - España
|
 Publicado: Sab Nov 05, 2011 4:41 am |
|
No das muchas pistas de que patrón necesitas pero bueno sería algo así Código: fpuga@Azul:~$ A="me he registrado recien al este foro que es al 100%,,, muy bueno excelente espero aprender -- mucho --" fpuga@Azul:~$ B=`echo "$A" | grep -o '100%'` fpuga@Azul:~$ echo $B 100%
_________________ Mi blog: Conocimiento Abierto
|
|
|
|
 |
ramonovski

Forista Medio
Registrado: Dom Sep 05, 2010 8:30 pm Mensajes: 398
|
 Publicado: Sab Nov 05, 2011 9:25 am |
|
O para buscar cualquier número que tenga porcentaje: Código: echo varUno=`echo "${VariableConLaCadena}" | grep -o '[[:digit:]]*%'`
_________________ scrotwm@FreeBSD pekwm@Sabayon ::vim::zsh::urxvtd|blog::dotfiles::last.fm
|
|
|
|
 |
neurus

Forista Distinguido
Registrado: Sab Oct 09, 2004 11:00 pm Mensajes: 1299
|
 Publicado: Sab Nov 05, 2011 9:59 am |
|
|
Es casi seguro que el usuario no volverá. Parece un típico caso de "me encargaron esta tarea y no tengo idea de nada". Tanto, que ni el enunciado tiene sentido.
Sin embargo, con la solución que propone ramonovski acá arriba le da algún sentido (haciendo un enorme esfuerzo de interpretación) al planteo del usuairo.
Tal como está el planteo en este post (ni indicios de expresiones regulares, variables o input), la manera más simple de conseguir el resultado esperado es: echo 100%.
|
|
|
|
 |
elistraus

Forista Nuevo
Registrado: Vie Nov 04, 2011 2:14 pm Mensajes: 5
|
 Publicado: Sab Nov 05, 2011 7:54 pm |
|
|
Que gran equivocacion de neuros, es de muy mala educacion especular a las personas, mas encima soy nuevo en el foro y ya me estan criticando,,, pero bueno,,,
@fpuga muuuuchas gracias te pasaste, la verdad estoy recien en linux y en su linea de comando, por eso acudí a este foro porque uds ya son secos, espero serlo igual en un tiempo,, muchas gracias te pasaste de verdad!!!
@ramonovski gracias por la ayuda compadre lo archivo a mis tips,,, muchas garcias,,,
Lo voy a probar y de ahí lo doy por solucionado,,,
Saludos a la comunidad
|
|
|
|
 |
niky45

Forista Ancestral
Registrado: Mié Abr 11, 2007 11:00 pm Mensajes: 8550 Ubicación: tras la pantalla (...)
|
 Publicado: Dom Nov 06, 2011 8:01 am |
|
elistraus escribió: Que gran equivocacion de neuros, es de muy mala educacion especular a las personas, mas encima soy nuevo en el foro y ya me estan criticando,,, pero bueno,,, sin animos de meterme donde no me llaman, pero la verdad es que 8 de cada 10 usuarios que aparecen con ese tipo de preguntas, no vuelven a aparecer. no era ningun desproposito por tanto, pensar que eras otro mas. (que leches, neurus es asi....  yo prefiero sus ironias, que no que se vaya y no nos de respuestas.  ) 
_________________ #446716
--Not me, guys. I read the Bash man page each day like a Jehovah's Witness reads the Bible. No wait, the Bash man page IS the bible. Excuse me... (from comp.os.linux.misc) [ DNFD ] - [ F4A ] - [ dotfiles ]
|
|
|
|
 |
elistraus

Forista Nuevo
Registrado: Vie Nov 04, 2011 2:14 pm Mensajes: 5
|
 Publicado: Dom Nov 06, 2011 3:29 pm |
|
|
Vale niky45 todabia me queda un largo camino, así por aqui estaré siempre preguntado cosillas que se me vayan de mis ojos,,, por mientras leo los tutoriales de aqui,,, vale??
un saludos a la comunidad!!
|
|
|
|
 |
ramonovski

Forista Medio
Registrado: Dom Sep 05, 2010 8:30 pm Mensajes: 398
|
 Publicado: Dom Nov 06, 2011 5:16 pm |
|
A la próxima que tengas una duda similar, procurar postear cosas como: - Qué has intentado
- Qué herramientas has utilizado
- Cómo piensas que puedes lograrlo
Y como extra, si quieres que te resuelvan el problema o que te enseñen a solucionarlo tu mismo, generalmente los usuarios de 1 post piden que les hagan el trabajo.
_________________ scrotwm@FreeBSD pekwm@Sabayon ::vim::zsh::urxvtd|blog::dotfiles::last.fm
|
|
|
|
 |
elistraus

Forista Nuevo
Registrado: Vie Nov 04, 2011 2:14 pm Mensajes: 5
|
 Publicado: Dom Nov 06, 2011 6:39 pm |
|
|
Bueno vale, procuraré hacerlo como dices,igual aunque sea tarde te voy a comentar lo que estaba haciendo,,
Tengo que mandar un archivo desde un servidor a otro, los dos sevidores estan sobre linux (RED-HAT 5.5), yo me conecto de forma remota por ssh a los dos servidores, desde linux igual, tengo la distro ubunto, yo soy nuevo en linux, así que decidí hacer un scripts que se ejecutaré automaticamente, para que se ejecute automaticamente ocupo el cron y en el script ocupo el scp y los comandos expect para la contraseña,,, La cosa es que tenía que hacer un log en la cual necesitaba saber si se habia conectado y coipiado el archivo, entonces como el scp me estrega un string de descarga, quería tener la manera de encontrar el 100% así median sentencias de control mando el mensaje al log si tubo exito o no la copia y estaba atorado ahí que no sabia almacenar la variable,,, pero gracias a uds lo pude hacer,,,
Como digo para la proxima seré mas detallado en mis consultas,,,
Saludos!!!!!
|
|
|
|
 |
fpuga

Forista Mayor
Registrado: Vie Ago 24, 2007 11:00 pm Mensajes: 794 Ubicación: Galicia - España
|
 Publicado: Lun Nov 07, 2011 6:32 am |
|
La mayoría de comandos en linux dejan al salir un código de error. Ese código es accesible mediante la variable $? o bien directamente lanzando el comando desde un if. Por ejemplo Código: fpuga@ELNATH:/tmp$ echo "foo" > foo.txt fpuga@ELNATH:/tmp$ if grep -q 'foo' foo.txt ; then echo "encontrado" ; else echo "no encontrado" ;fi encontrado fpuga@ELNATH:/tmp$ if grep -q 'Esto no esta' foo.txt ; then echo "encontrado" ; else echo "no encontrado" ;fi no encontrado Lo que tienes que hacer es algo parecido pero en lugar del comando llamar a grep dentro del if llamas a scp
_________________ Mi blog: Conocimiento Abierto
|
|
|
|
 |
elistraus

Forista Nuevo
Registrado: Vie Nov 04, 2011 2:14 pm Mensajes: 5
|
 Publicado: Lun Nov 07, 2011 12:12 pm |
|
[quote=Lo que tienes que hacer es algo parecido pero en lugar del comando llamar a grep dentro del if llamas a scp[/quote] aaaaahh, que bien, gracias,,, Una pregunta, mira resulta que estoy dando una orden de ejecución a mi scripts con cron, pero tengo problemas con darle la ruta,,, me explico al dar y ejecutar mi archivo .sh con ./copiador.sh funciona de maravilla pero al darle la ruta del archivo en la configuracion del crontab -e le doy /home/luis/Escritorio/copiador.sh y no lo pilla  , entonces probe copiando la ruta desde otro lugar y no sale no pilla el archivo no se que hago mal,,, haber si me das o me dan una mano,,, Saludos Editado -- Lun Nov 07, 2011 2:12 pm --ya lo solucione lo sorry era capa 8  era porque al archivo que comprimo lo estaba nombrando como si estubiera en el directorio y no le estaba dando la ruta bkn!!! lo he logrado he hecho mi primer scripts en linux Gracias a todos Saludos
|
|
|
|
 |
|
|
|
Página 1 de 1
|
[ 11 mensajes ] |
|
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados
No puede abrir nuevos temas en este Foro No puede responder a temas en este Foro No puede editar sus mensajes en este Foro No puede borrar sus mensajes en este Foro No puede enviar adjuntos en este Foro
|
|