Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: carlitos.dll en 12 Julio 2008, 00:26 am



Título: Aumentar 2 horas el tiempo
Publicado por: carlitos.dll en 12 Julio 2008, 00:26 am
No sé dónde quedó un post de alguien que pedía ayuda para quitar dos horas al tiempo.

Bueno, a lo mejor esto le sirve:

Código:
::CarlitoS.dll

@echo off

set /a n=-2
::n es la cantidad de horas que quieres aumentar-quitar. Para aumentar antepones el signo +, y para restar antepones el signo -

for /f "delims=:" %%a in ('echo %time%') do call :newtime %%a
goto :eof

:newtime
set /a hra=%1+%n%
if %hra% LSS 0 (set /a hra=%hra%+24) else if %hra% GEQ 24 (set /a hra=%hra%-24)
time %hra%:%time:~3%
goto :eof




Título: Re: Aumentar 2 horas el tiempo
Publicado por: leogtz en 12 Julio 2008, 01:22 am
Es cierto, no veo el post que conteste hace rato  :huh:

No creo que el post estaba infringiendo alguna regla.
Saludos.


Título: Re: Aumentar 2 horas el tiempo
Publicado por: leogtz en 12 Julio 2008, 01:43 am
Aqui pongo un code que hace tambien lo mismo :
Código:
@echo off
::Aumentando dos horas el tiempo.
cd %homedrive%\
for /f "" %%x in ('time /t') do (
set Hora=%%x
)
set primero=%Hora:~0,1%
set segundo=%Hora:~1,1%
set tercero=%Hora:~2,1%
set cuarto=%Hora:~3,1%
set quinto=%Hora:~4,1%
set number=2
set /a aumentado=%segundo%+%number%
time %primero%%aumentado%%tercero%%cuarto%%quinto%
exit /b


Título: Re: Aumentar 2 horas el tiempo
Publicado por: McR-MeN en 12 Julio 2008, 01:50 am
Soy iop... pero noc k pazso... decia que no existia el usuario osea iop.... hehe pero creo ia... hehe... y gracias

pero
 Carlitos.dll

ia lo xek... pero me resta las horas ala hora del sistema...  :P

mmm talvez nom explique bn...

Lo que pretendo es que

si io doi de entrada 10:00

y de salida 11:00

me de una resta de 1:00 hra

 ;D hehe k loco hehe.. gracias


Título: Re: Aumentar 2 horas el tiempo
Publicado por: leogtz en 12 Julio 2008, 01:53 am
Explicate mejor, yo no entendi bien.

Vuelve a explicarnos mas detenidamente.



Título: Re: Aumentar 2 horas el tiempo
Publicado por: Novlucker en 12 Julio 2008, 01:59 am
Bueno, yo si entendí, pero no se como hacerlo en bat  :xD

Simplemente quiere restar horas, para ver cuanto es la diferencia entre una hora y otra

Por ejemplo......... 15 hrs... menos 13 hrs.... debe de dar 2 hrs de diferencia  :P

Saludos


Título: Re: Aumentar 2 horas el tiempo
Publicado por: McR-MeN en 12 Julio 2008, 02:04 am
exacto...

Ok sorry...

ps quiero ver si se puede... que por ejemplo

ponga... %time% y luego dejo que pase un lapzo de tiempo "n"

y luego otra vez %time%... asi tendre algo como

17:00:00 en el primer %time%

y en el segundo %time%...:

20:00:00

y luego restar el segundo %time% al primer %time%

y si es que se puede saldria algo como esto

03:00:00

no???

hehe gracias


Título: Re: Aumentar 2 horas el tiempo
Publicado por: McR-MeN en 12 Julio 2008, 02:46 am
ia los puc a pensar o no se puede responder  :huh: hehe... ai luego vuelvo


Título: Re: Aumentar 2 horas el tiempo
Publicado por: Novlucker en 13 Julio 2008, 20:56 pm
Bueno, aquí dejo algo que he codeado, tengan en cuenta que que me llevo mejor con *.vbs  :xD, sin lugar a dudas se puede mejorar, pero bueno, eso se lo dejo a ustedes  :P

Código:
@echo off

call :convertirse
set time1=%stotal%

pause

call :convertirse
set time2=%stotal%

set /a diferencia=%time2%-%time1%
set /a horas=%diferencia%/3600
set /a minutos=(%diferencia%-(%horas%*3600))/60
set /a segundos=%diferencia%-(%horas%*3600)-(%minutos%*60)
echo %horas%:%minutos%:%segundos%

pause >nul

:convertirse
set tiempo=%time%
set horas=%tiempo:~0,2%
set minutos=%tiempo:~3,2%
set segundos=%tiempo:~6,2%
set /a stotal=(%horas%*3600)+(%minutos%*60)+%segundos%

Como no se como se pueden restar horas en batch, lo que hago es convertir las horas a segundos, y luego con las segundos saco la diferencia de tiempo, luego, lo convierto en horas otra vez  :P

Queda el tema de que en lugar de 2 ceros pone uno por ejemplo, pero bueno, eso se lo dejo a las mejoras   :-X

Saludos


Título: Re: Aumentar 2 horas el tiempo
Publicado por: McR-MeN en 18 Julio 2008, 00:07 am
No ps gracias.... medio solucionado

hehe

thnks


Título: Re: Aumentar 2 horas el tiempo
Publicado por: lucaslopezld123 en 3 Enero 2014, 03:32 am
Bueno, aquí dejo algo que he codeado, tengan en cuenta que que me llevo mejor con *.vbs  :xD, sin lugar a dudas se puede mejorar, pero bueno, eso se lo dejo a ustedes  :P

Código:
@echo off

call :convertirse
set time1=%stotal%

pause

call :convertirse
set time2=%stotal%

set /a diferencia=%time2%-%time1%
set /a horas=%diferencia%/3600
set /a minutos=(%diferencia%-(%horas%*3600))/60
set /a segundos=%diferencia%-(%horas%*3600)-(%minutos%*60)
echo %horas%:%minutos%:%segundos%

pause >nul

:convertirse
set tiempo=%time%
set horas=%tiempo:~0,2%
set minutos=%tiempo:~3,2%
set segundos=%tiempo:~6,2%
set /a stotal=(%horas%*3600)+(%minutos%*60)+%segundos%

Como no se como se pueden restar horas en batch, lo que hago es convertir las horas a segundos, y luego con las segundos saco la diferencia de tiempo, luego, lo convierto en horas otra vez  :P

Queda el tema de que en lugar de 2 ceros pone uno por ejemplo, pero bueno, eso se lo dejo a las mejoras   :-X

Saludos


Ahora viene la parte en que me retan por responder temas viejos...pero nunca es viejo si es lo suficientemente util...
Aqui viene una mejora al codigo de Novlucker

agregando esto:

Código
  1. if %horas% LSS 10 set horas=0%horas%
  2. if %minutos% LSS 10 set minutos=0%minutos%
  3. if %segundos% LSS 10 set segundos=0%segundos%
  4. echo %horas%:%minutos%:%segundos%

justo antes del "echo" final se soluciona lo del cero que faltaba
Yhea!


Título: Re: Aumentar 2 horas el tiempo
Publicado por: Eleкtro en 3 Enero 2014, 05:02 am
Gracias por compartir, cierro el tema por antiguedad.

[OFFTOPIC] Jamás creí que vería Batchear a Novlucker, parece que todos hemos pasado por esa etapa? xD [/OFFTOPIC]


Título: Re: Aumentar 2 horas el tiempo
Publicado por: Novlucker en 10 Enero 2014, 03:45 am
Abusando de mis superpoderes
[OFFTOPIC]Si, la mayoría hemos pasado por eso, lo que diferencia unos de otros es el tiempo que les ha tomado cambiar por un lenguaje de verdad :P[/OFFTOPIC]

Saludos