Ms-Dos - Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

 
Vista:
sin imagen de perfil

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por CarlosQ (28 intervenciones) el 28/09/2011 22:08:00
Estimados masters

conosco muy poco este tipo de programación, me podrían ayudar con un ejemplo de como tomar archivos desde un FTP, en este directorio se cargar archivos como estos ej:

TRAN_HORA_20110928_14.TXT
TRAN_HORA_20110928_13.TXT
TRAN_HORA_20110928_12.TXT

como puedo hacer un bat que recorra el directorio y que identifique el ultimo cargado, en este caso seria TRAN_HORA_20110928_14.TXT (14hrs), por favor


saludos y gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por Antoni Masana (811 intervenciones) el 29/09/2011 09:40:07
Hay dos posibilidades:

1.- Que ejecutes el BAT dentro de la hora que se ha creado, es decir entre las 14:00:00 hasta las 14:59:59 del día en cueston. En este caso sabemos la fecha y la hora del fichero a descargar.

2.- Cuando se ejecuta el BAT no se save la fecha y la hora del ultimo creado, que es el unico que deseamos descargar.

La solucion es diferente para ambos casos y la mas rapida es la primera pero tiene una pega, si no existe el FTP descarga/crea un fichero vacio, que no puedes saber si en el origen esta vacio o no existia, dicho de otra forma, no puedes asegura el fichero.

Como no tengo intencion de explicar las dos opciones.

¿Cual es tu caso? o ¿Cual prefieres que te explique?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por CarlosQ (28 intervenciones) el 29/09/2011 13:37:16
Gracias antoni

Creo que la dos es mas conveniente y creo que me podria servir paa futuras descargas te lo agradesco muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por Antoni Masana (811 intervenciones) el 30/09/2011 07:42:21
Este codigo deberia funcionar tal cual esta.

Te pide los datos para hacer el FTP pero puedes cambiarlo para que no lo pida. Ejemplo

SET Direc=198.162.1.100
SET User=Administrador
SET Pass=mi_palabrita_secreta

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
@echo off
 
echo.
set /P Dire=IP o maquina...
echo.
set /P User=Usuario........
echo.
set /P Pass=Contrase¤a.....
echo.
 
echo open %Dire%         > popo-1.txt
echo user %User% %Pass% >> popo-1.txt
echo cd /backup         >> popo-1.txt
echo ls TRAN_HORA*.*    >> popo-1.txt
echo bye                >> popo-1.txt
 
ftp -n <popo-1.txt >popo-0.txt
 
set File=
for /F %%a in (popo-0.txt) do set File=%%a
 
IF "%File%" == "" goto:EOF
 
echo open %Dire%         > popo-2.txt
echo user %User% %Pass% >> popo-2.txt
echo cd /backup         >> popo-2.txt
echo asc                >> popo-2.txt
echo get %File%         >> popo-2.txt
echo bye                >> popo-2.txt
 
ftp -n <popo-2.txt >nul
 
del popo-?.txt


NOTA: cuando hace el FTP busca los fichero en la carpeta /BACKUP, lo he puesto como ejemplo pero puedes modificarlo op eliminarlo a tu gusto.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por CarlosQ (28 intervenciones) el 30/09/2011 18:09:50
Gracias Antoni te pasaste eso era loque necesitaba muy agradecido de tu ayuda y conocimientos

gracias master!

voy a estudiar bien cada codigo para despues utilizarlos y modificarlos en otras situaciones.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por CarlosQ (28 intervenciones) el 30/09/2011 20:48:43
Antoni

Para archivos con este formato no funciona, como debería hacerlo?

TRAN_Sem_20-09-2011.TXT
TRAN_Sem_14-09-2011.TXT


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por Antoni Masana (811 intervenciones) el 03/10/2011 07:30:44
Cuando se ejecuta esta lineas:

1
2
3
4
5
echo open %Dire%         > popo-1.txt
echo user %User% %Pass% >> popo-1.txt
echo cd /backup         >> popo-1.txt
echo ls TRAN_HORA*.*    >> popo-1.txt
echo bye                >> popo-1.txt


lo que se esta haciendo es crear un archivo de comandos para el FTP.

1
2
3
4
5
open %Dire%
user %User% %Pass%
cd /backup
ls TRAN_HORA*.*
bye


La línea 3 es un cambio de directorio que se utiliza el mismo comando que en MS-DOS.

En la línea 4 el ls es el equivalente en UNIX al DIR /B del MS-DOS, el FTP utiliza una mezcla de comandos UNIX y MS-DOS, por ejemplo el DIR y ls, el primero es propio del MS-DOS y el segundo del UNIX pero sirven para lo mismo pero con diferentes formatos, ¿Por que? y yo que se.

En tu caso debes cambiar la linea:

1
echo ls TRAN_HORA*.*    >> popo-1.txt


por

1
echo ls TRAN_Sem*.*    >> popo-1.txt


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por CarlosQ (28 intervenciones) el 03/10/2011 17:38:55
Muchas gracias Antoni
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por CarlosQ (28 intervenciones) el 26/10/2011 00:18:49
Antoni,

tengo un problema al obtener el ultimo archivo por hora ya que en vez de tomar el ultimo archivo cargado que seria este

TRAN_HORA_20111025_18.TXT

esta tomando este otro

TRAN_HORA_20111025_9.TXT

asume que es mayor 9 que 18 como puedo corregir este problema

------

@echo off


set Dire=***
set User=***
set Pass=***

echo open %Dire% > popo-1.txt
echo user %User% %Pass% >> popo-1.txt
echo cd /user_per >> popo-1.txt
echo ls TRAN_HORA_*.* >> popo-1.txt
echo bye >> popo-1.txt

ftp -n <popo-1.txt >popo-0.txt

set File=
for /F %%a in (popo-0.txt) do set File=%%a

IF "%File%" == "" goto:EOF

echo open %Dire% > popo-2.txt
echo user %User% %Pass% >> popo-2.txt
echo cd /user_per >> popo-2.txt
echo asc >> popo-2.txt
echo get %File% >> popo-2.txt
echo bye >> popo-2.txt

ftp -n <popo-2.txt >nul

del popo-?.txt



saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por CarlosQ (28 intervenciones) el 26/10/2011 00:35:09
creo que lo solucione asi

ls TRAN_HORA_*_??.*

los me trajo el de las 19 hrs estaría bien, esperaré mañana a ver si me trae el de ls 9 hrs


saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por Luis (1 intervención) el 08/05/2012 23:30:02
Antoni,
antes que nada agradesco que compartas tus conocimientos, a mi en los personal me esta ayudando en este momento.

mi consulta es bien simple.
en que parte del codigo que dejaste, puedo dejar una ruta para que se descarge lo que estoy bajando del ftp????

en este momento yo ejecuto el codigo, y el archivo me los deja en el escritorio, pero necesito dejarlo en otro lugar.

espero atento tu respuesta. Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por fede (1 intervención) el 17/05/2012 17:23:42
echo asc >> popo-2.txt
echo lcd "unidad:\directorio" >> popo-2.txt
echo get %File% >> popo-2.txt

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como indico a mi directorio que solo suba archivos con fecha actual de cada dia a ftp con script

Publicado por plinio (1 intervención) el 19/09/2012 00:09:55
Este es mi script que sube el contenido de una carpeta y tambien lo descarga
Script ftps
//subir .tpl
1. open misitioftp.com
2. usuario
3. password
4. cd public_html
5. mput C:\loquequierosubir\*.*
6. bye

Scrip que sube
1. @echo off
2. ftp -i -s:"subir.tpl"
//Bajar o descargar
1. open misitioftp.com
2. usuario
3. password
4. cd public_html
5. lcd C:\backup
6. mget *
7. bye
script
1. @echo off
2. ftp -i -s:"bajar.tpl"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

como indico a mi directorio que solo suba archivos con fecha actual de cada dia a ftp con script

Publicado por Jose Miguel (1 intervención) el 19/04/2017 22:47:58
Hola como estan quiero que me ayude a como yo obtener la ip wlan,masadress,y ip. desde un programa ftp
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

como indico a mi directorio que solo suba archivos con fecha actual de cada dia a ftp con script

Publicado por Antoni Masana (811 intervenciones) el 20/04/2017 06:59:22
Por favor abre un nuevo post para que lo vea todo el mundo.
Este queda un poco lejos en el tiempo.
Así lo podrá ver mas gente y es más facíl que alguien te responda si no se la respuesta a tu problema.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Como crear bat para tomar archivos de un FTP con nombre fecha, tomar el ultimo

Publicado por Patricio Alvear (1 intervención) el 25/08/2017 19:04:38
Yo tengo la estructura del archivo de esta forma con el nombre de usuario fecha (aa-mm-dd) y hora (hh:mm:ss) todo unido como se muestra a continuacion. USER170825110159.txt

Al momento de listar los archivos se enllistan de esta forma:

USER170825110159.txt

USER170825104753.txt

USER170824165628.txt

Cuando coge el ultimo archivo me toma en cuenta este: USER170824165628.txt pero debería ordenarme y coger el mayor que es este archivo USER170825110159.txt

Como podria solucionar este caso?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar