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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Hacer un Batch de control de versión
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Hacer un Batch de control de versión  (Leído 2,153 veces)
ShootingStar

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Hacer un Batch de control de versión
« en: 24 Octubre 2011, 23:11 pm »

Estimados amigos:
Quizás alguien me pueda orientar como resolver esta situación.
Tengo este escenario: un servidor y un par de terminales, en el servidor se graba el menu.exe actualizado, pero cada terminal debe verificar antes de ejecutar, si la versión de menu.exe es más nueva q’la de la terminal, en ese caso antes de ejecutarlo debe copiarlo desde el servidor a la terminal y luego si ejecutarlo.
Si el .exe del servidor es +nuevo que el de la terminal REEMPLAZAR
------------------------------------------------------------
@Echo off
ArchExe := ‘menu.exe’
Ruta1   := ‘Unidad1:\Direct\SubDirect\’
Ruta2   := ‘Unidad2:\Direct\SubDirect\’

Item1 := Ruta1 + ArchExe
Item2 := Ruta2 + ArchExe

Rem  Comienzo, pregunta por el 1º
:Paso1
IF EXIST %Item1% goto Paso2
goto End

Rem  Si encontró el 1º, pregunta por el 2º
:Paso2
IF EXIST %Item2% goto Paso3
goto End

Rem  Compara el 1º con el 2º
:Paso3
IF NOT      COMPARACION        goto Paso4
goto End

Rem  Reemplaza
:Paso4
Copy %Item1% %Item2%
goto End

:End
Menu.exe
-----------------------------------------------------------
Este es el esquema que traté de llevar adelante, pero no supe que usar para hacer la COMPARACION


En línea

DameBanda

Desconectado Desconectado

Mensajes: 65


Hollywood Whore


Ver Perfil
Re: Hacer un Batch de control de versión
« Respuesta #1 en: 5 Noviembre 2011, 15:01 pm »

Hola, no entendí muy bien. Dices que esto es batch? en tal caso será pseudocode no?? :-[
Dices que compara, [los archivos, las versiones, etc??]

Por favor, se un poco mas específico  ;)


En línea

"Amarillo, pensó" Douglas Adams




[img]http:/
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.813



Ver Perfil
Re: Hacer un Batch de control de versión
« Respuesta #2 en: 6 Noviembre 2011, 10:49 am »

No he probado demasiado mi modificación pero creo que no he cometido ningún error, ya nos cuentas  :)


Código
  1. @Echo off
  2.  
  3. Rem EleKtrO H@ckeR
  4.  
  5. Set ArchExe="menu.exe"
  6. Set Ruta1= "Unidad1:\Direct\SubDirect\"
  7. Set Ruta2= "Unidad2:\Direct\SubDirect\"
  8.  
  9. Set Item1="Ruta1\ArchExe"
  10. Set Item2="Ruta2\ArchExe"
  11.  
  12. Rem  Comienzo, pregunta por el 1º
  13. :Paso1
  14. IF EXIST "%Item1%" (goto :Paso2) ELSE (goto :End)
  15.  
  16. Rem  Si encontró el 1º, pregunta por el 2º
  17. :Paso2
  18. IF EXIST "%Item2%" (goto :Paso3) ELSE (goto :End)
  19.  
  20. ################################################################################################################################>nul
  21.  
  22. :Paso3
  23.  
  24. REM Seteamos la fecha y la hora de creacion del Item 1 e Item 2...
  25.  
  26. For /F "Tokens=1,2,3*" %%a in ('dir /tc/od "ITEM1.EXE" ^| Find "ITEM1.EXE"') do (
  27. Set Fecha_de_creacion_Item1=%%a
  28. Set Hora_de_creacion_Item1=%%b
  29. )
  30.  
  31. For /F "Tokens=1,2,3*" %%a in ('dir /tc/od "ITEM2.EXE" ^| Find "ITEM2.EXE"') do (
  32. Set Fecha_de_creacion_Item2=%%a
  33. Set Hora_de_creacion_Item2=%%b
  34. )
  35.  
  36. Rem  Compara el 1º con el 2º
  37.  
  38. :Creation Date
  39.  
  40. REM Si la fecha de creacion del item 1 es mayor que el 2...
  41. If %Fecha_de_creacion_Item1:~-0,5% GTR %Fecha_de_creacion_Item2:~-0,5% (Goto :Paso4)
  42.  
  43. REM Si la fecha de creacion del item 1 es menor que el 2...
  44. If %Fecha_de_creacion_Item1:~-0,5% LSS %Fecha_de_creacion_Item2:~-0,5% (Goto :End)
  45.  
  46. REM Si la fecha de creacion del item 1 es igual que el 2...
  47. If %Fecha_de_creacion_Item1:~-0,5% EQU %Fecha_de_creacion_Item2:~-0,5% (Goto :Creation Hour)
  48.  
  49. echo+ ERROR en la comparacion
  50.  
  51. :Creation Hour
  52.  
  53. REM Si la hora de creacion del item 1 es mayor que el 2...
  54. If %Hora_de_creacion_Item1% GTR %Hora_de_creacion_Item2% (Goto :Paso4)
  55.  
  56. REM Si la hora de creacion del item 1 es menor que el 2...
  57. If %Hora_de_creacion_Item1% LSS %Hora_de_creacion_Item2% (Goto :End)
  58.  
  59. REM Si la hora de creacion del item 1 es igual que el 2...
  60. If %Hora_de_creacion_Item1% EQU %Hora_de_creacion_Item2% (Goto :End)
  61.  
  62. echo+ ERROR en la comparacion
  63.  
  64. ################################################################################################################################>nul
  65.  
  66. Rem  Reemplaza
  67. :Paso4
  68. Copy /Y "%Item1%" "%Item2%" >nul
  69. goto :End
  70.  
  71. :End
  72. "Menu.exe"
  73.  
« Última modificación: 6 Noviembre 2011, 11:10 am por EleKtro H@cker » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Tengo el control OCX, ANIGIF en Version Full(Crackeado)
Programación Visual Basic
Graphixx 8 7,558 Último mensaje 27 Marzo 2011, 00:41 am
por Graphixx
control remoto batch
Scripting
BATCH.bat 0 3,508 Último mensaje 16 Diciembre 2010, 20:12 pm
por BATCH.bat
[BATCH] Dudas sobre Rundll32 y los comandos de la API de nVidia Control Panel
Scripting
SuperDraco 9 6,205 Último mensaje 6 Mayo 2011, 10:03 am
por SuperDraco
hacer control infrarrojo con dos pic en mikrobasic
Electrónica
16f877a 1 2,692 Último mensaje 25 Agosto 2012, 01:07 am
por tremolero
control de ventas papeleria batch
Scripting
asdexiva 4 3,333 Último mensaje 13 Noviembre 2012, 01:37 am
por RevangelyonX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines