elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Error al pasar variable a CURL para recoger correo mediante IMAP (SOLUCIONADO)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error al pasar variable a CURL para recoger correo mediante IMAP (SOLUCIONADO)  (Leído 1,072 veces)
malariax

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Error al pasar variable a CURL para recoger correo mediante IMAP (SOLUCIONADO)
« en: 31 Julio 2014, 18:05 pm »

Hola buenas, estoy tratando de realizar un script para descargar determinados mail mediante imap. En la siguiente línea el script busca un determinado asunto, en este caso #order# , y de esa búsqueda, la variable "nummail" toma un valor numérico que hace referencia a ese mail con ese asunto si es que existe:

Código:
nummail=$(curl --url "imaps://imap.gmail.com:993/INBOX" --ssl-reqd --user "$mail:$passmail" -X "SEARCH SUBJECT '#order#'" --insecure | awk '{print $3}')

El valor lo toma correctamente pero luego viene el problema e la siguiente línea:

Código:
curl  --ssl-reqd --user "$mail:$passmail" --insecure --url "imaps://imap.gmail.com:993/INBOX/;UID=$nummail/;SECTION=TEXT" > order

Introduzco la variable $nummail dentro del comando para que de esta manera recoja el mail a traves de imap y lo pase a un archivo de texto. El problema es que no me funciona con lo que curl me da el siguiente error:

Código:
curl: (3) URL using bad/illegal format or missing URL

Por alguna razón, me imagino que de sintaxis, el comando curl no coge la variable como es debido, he probado a sustituir $nummail por un número para saber si estaba escribiendo mal el comando y mostraba el mismo error, pero no es así. ¿Alguna sugerencia?
Gracias.


« Última modificación: 31 Julio 2014, 20:40 pm por malariax » En línea

malariax

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Error al pasar variable a CURL para recoger correo mediante IMAP
« Respuesta #1 en: 31 Julio 2014, 20:40 pm »

Me respondo a mi mismo :), tras varios quebraderos de cabeza he descubierto que el valor que tomaba "nummail" no era sólo un valor numérico. Por ejemplo, si el script se encontraba un mail con el asunto #order#,  y este mail era clasificado con el numero 950, "nummail" no estaba tomando sólo el valor 950 si no lo siguiente "950\r". La solución consiste en añadir tr -d "\r" a la siguiente línea, quedando así de la siguiente manera:

Código:
nummail=$(curl --url "imaps://imap.gmail.com:993/INBOX" --ssl-reqd --user "$mail:$passmail" -X "SEARCH SUBJECT '#order#'" --insecure | awk '{print $3}' | tr -d "\r")


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Autenticación en Tuenti mediante Curl
Scripting
swinman 1 3,287 Último mensaje 26 Marzo 2010, 10:48 am
por kamsky
Pasar el resultado de un comando a una variable (solucionado)
Scripting
r1v33 1 3,705 Último mensaje 14 Julio 2011, 08:09 am
por r1v33
Problemas para cargar pagina mediante curl
PHP
gio.garciap 1 2,622 Último mensaje 6 Octubre 2012, 01:31 am
por #!drvy
Hacer cURL en respuesta de cURL para posterior scraping.
PHP
goditozor 3 3,507 Último mensaje 1 Septiembre 2014, 20:32 pm
por WHK
¿Usas Gmail en algún cliente de correo con IMAP? Revisa antes estos cinco ...
Noticias
wolfbcn 0 863 Último mensaje 24 Noviembre 2014, 13:28 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines