Hola a todos. Tengo un proyecto entre manos que consiste en lo siguiente: Un suario manda a un correo electrónico un mail con un fichero adjunto, este fichero se descarga de forma automática en una carpeta de un sistema que corre bajo Linux (Ubuntu), una vez descargado quisiera generar un script de R de forma automática seleccionase el último fichero descargado e hiciese con él una serie de acciones que estén recogidas en un script. Tanto la descarga de fichero como la ejecución del script se haría de forma periódica... pero lo que me preocupa es que no sé como hacer que R distinga el fichero a usar (que sería siempre el último recibido) ya que cada fichero tendrá un nombre distinto. ¿Alguna idea? Como dato adicional decir que soy absolutamente novato en el manejo de linux desde terminal, pero que estoy empezando a aprender ahora, y si la solución viniese por ejecutar comandos de Linux en lugar de R también me valdría. Muchas gracias a todos [[alternative HTML version deleted]]
Hola, Desde linux puede hacerse fácil con ls -t que ordena los ficheros por orden temporal. Podrías desde un script bash hacer por ejemplo: ultimo=$(ls -t | head -n 1) echo "Procesando para el fichero $ultimo" Rscript my_script $ultimo Donde pasas al script de R la variable $ultimo Para recuperar esa variable en R lo haces con commandArgs por ejemplo. Aquí tienes más info: http://tuxette.nathalievilla.org/?p=1696 Un saludo, Jorge A. El 14 de febrero de 2016, 18:05, Pedro Herrero Petisco < pedroherreropetisco en gmail.com> escribió:> Hola a todos. > Tengo un proyecto entre manos que consiste en lo siguiente: > Un suario manda a un correo electrónico un mail con un fichero adjunto, > este fichero se descarga de forma automática en una carpeta de un sistema > que corre bajo Linux (Ubuntu), una vez descargado quisiera generar un > script de R de forma automática seleccionase el último fichero descargado e > hiciese con él una serie de acciones que estén recogidas en un script. > > Tanto la descarga de fichero como la ejecución del script se haría de forma > periódica... pero lo que me preocupa es que no sé como hacer que R distinga > el fichero a usar (que sería siempre el último recibido) ya que cada > fichero tendrá un nombre distinto. > > ¿Alguna idea? > > Como dato adicional decir que soy absolutamente novato en el manejo de > linux desde terminal, pero que estoy empezando a aprender ahora, y si la > solución viniese por ejecutar comandos de Linux en lugar de R también me > valdría. > > Muchas gracias a todos > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >-- Jorge Ayuso Rejas [[alternative HTML version deleted]]
Fantástico Jorge. Es exactamente lo que necesitaba. Muchas gracias :-) El 14 de febrero de 2016, 18:53, Jorge Ayuso Rejas <jayusor en gmail.com> escribió:> Hola, > > Desde linux puede hacerse fácil con ls -t que ordena los ficheros por > orden temporal. > > Podrías desde un script bash hacer por ejemplo: > > ultimo=$(ls -t | head -n 1) > echo "Procesando para el fichero $ultimo" > Rscript my_script $ultimo > > Donde pasas al script de R la variable $ultimo > > Para recuperar esa variable en R lo haces con commandArgs por ejemplo. > Aquí tienes más info: http://tuxette.nathalievilla.org/?p=1696 > > Un saludo, > Jorge A. > > > > El 14 de febrero de 2016, 18:05, Pedro Herrero Petisco < > pedroherreropetisco en gmail.com> escribió: > >> Hola a todos. >> Tengo un proyecto entre manos que consiste en lo siguiente: >> Un suario manda a un correo electrónico un mail con un fichero adjunto, >> este fichero se descarga de forma automática en una carpeta de un sistema >> que corre bajo Linux (Ubuntu), una vez descargado quisiera generar un >> script de R de forma automática seleccionase el último fichero descargado >> e >> hiciese con él una serie de acciones que estén recogidas en un script. >> >> Tanto la descarga de fichero como la ejecución del script se haría de >> forma >> periódica... pero lo que me preocupa es que no sé como hacer que R >> distinga >> el fichero a usar (que sería siempre el último recibido) ya que cada >> fichero tendrá un nombre distinto. >> >> ¿Alguna idea? >> >> Como dato adicional decir que soy absolutamente novato en el manejo de >> linux desde terminal, pero que estoy empezando a aprender ahora, y si la >> solución viniese por ejecutar comandos de Linux en lugar de R también me >> valdría. >> >> Muchas gracias a todos >> >> [[alternative HTML version deleted]] >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> > > > > -- > Jorge Ayuso Rejas >[[alternative HTML version deleted]]
Hola. Pedro, ¿has valorado la posibilidad de que el script se ejecute con la recepción del correo y no a intervalos periódicos? La utilidad procmail se puede configurar para que lance un ejecutable con la llegada de un correo. De esta forma no harías ejecuciones en vacío (sin nada que procesar) y los resultados estarían al mismo tiempo, casi, que llega el correo. Saludos. El dom, 14-02-2016 a las 18:05 +0100, Pedro Herrero Petisco escribió:> Hola a todos. > Tengo un proyecto entre manos que consiste en lo siguiente: > Un suario manda a un correo electrónico un mail con un fichero > adjunto, > este fichero se descarga de forma automática en una carpeta de un > sistema > que corre bajo Linux (Ubuntu), una vez descargado quisiera generar un > script de R de forma automática seleccionase el último fichero > descargado e > hiciese con él una serie de acciones que estén recogidas en un > script. > > Tanto la descarga de fichero como la ejecución del script se haría de > forma > periódica... pero lo que me preocupa es que no sé como hacer que R > distinga > el fichero a usar (que sería siempre el último recibido) ya que cada > fichero tendrá un nombre distinto. > > ¿Alguna idea? > > Como dato adicional decir que soy absolutamente novato en el manejo > de > linux desde terminal, pero que estoy empezando a aprender ahora, y si > la > solución viniese por ejecutar comandos de Linux en lugar de R también > me > valdría. > > Muchas gracias a todos > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es