Curso batch

Maestro html, creo que ya puede proseguir con la siguiente lección.
Perdón por tardar en la siguiente lección, dentro de poco la pondré, mientras aquí tienen un calculador de raíces cuadradas:

@echo off
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::                                                                                                                              ::
::Este proyecto está completamente hecho por Maestro Html y se distribuye con la siguiente licencia:                            ::
::[url]http://creativecommons.org/licenses/by-nc-sa/2.5/es/[/url]                                                                          ::
::Cualquier incumplimiento de ese copyright contribuirá al uso ilegal de el programa entero o una porción del programa          ::         
::                                                                                                                              ::
::[url]http://destellosolutions.com[/url]                                                                                                  ::
::ELIMINAR ESTA CABECERA TAMBIÉN SE CONSIDERARÁ UN INCUMPLIMIENTO DEL COPYRIGHT                                                 ::
::                                                                                                                              ::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::                                                                                                                                ::

title Calcular raices cuadradas
:init
cls
set /p i=Numero a calcular su raiz ^>^> 
if %i% GTR 999999999999999999999999999999999999999999 (goto letra)
if not defined i (goto init)
goto calcular

:letra
cls
echo Pusiste una letra
pause
goto init


::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:calcular
cls
call:potencias
echo La raiz de %i% es igual a %raiz%.
if %exact%==false (
echo Resto: %resto%
)
pause > nul
goto init



:potencias
set j=0
set y=0
set x=0
:_bp
set /a j=j+1
set /a y=j*j
if %y% LSS %i% (goto _pr)
if %y% GTR %i% (goto _a)
if %y%==%i% (goto _exact)

:_pr
set x=%y%
set x2=%j%
goto _bp

:_a
set raiz=%x2%
set exact=false
set /a resto1=%x2%*%x2%
set /a resto=i-resto1
goto:eof

:_exact
set raiz=%j%
set exact=true
goto:eof



Saludos.
Olaa!! Estoy siguiendo tu curso, espero con muchas ganas la siguiente leccion, poruqe abra otra no? :D tengo un preguntilla en el ejemplo de la parte Capítulo 4 - Redireccionadores, si quiero cambiar otro archivo solo tendria que cambiar lo que esta en verde verdad??. Felicidades por esa agenda jejej. saludos y espero tu proxima lección

@echo off 
set /p escrito=Que quieres escribir? 
cls 
set /p archivo=En que archivo quieres escribirlo? (la extension sera txt) 
cls 
set /p borrar=Borrar lo que hubiera escrito en el archivo? 
if /i %borrar%==si (goto si) 
rem el modificador /i hace que no distinga entre mayúsculas y munúsculas, por lo que da igual que el usuario ponga Si que si. 
echo %escrito% >> %archivo%.[color=green]txt[/color] 
cls 
echo Ok! 
pause > nul 
exit 

:si 
echo %escrito% > %archivo%.[color=green]txt [/color]
cls 
echo Ok! 
pause > nul 
exit
ninfas escribió:Olaa!! Estoy siguiendo tu curso, espero con muchas ganas la siguiente leccion, poruqe abra otra no? :D tengo un preguntilla en el ejemplo de la parte Capítulo 4 - Redireccionadores, si quiero cambiar otro archivo solo tendria que cambiar lo que esta en verde verdad??. Felicidades por esa agenda jejej. saludos y espero tu proxima lección

@echo off 
set /p escrito=Que quieres escribir? 
cls 
set /p archivo=En que archivo quieres escribirlo? (la extension sera txt) 
cls 
set /p borrar=Borrar lo que hubiera escrito en el archivo? 
if /i %borrar%==si (goto si) 
rem el modificador /i hace que no distinga entre mayúsculas y munúsculas, por lo que da igual que el usuario ponga Si que si. 
echo %escrito% >> %archivo%.[color=green]txt[/color] 
cls 
echo Ok! 
pause > nul 
exit 

:si 
echo %escrito% > %archivo%.[color=green]txt [/color]
cls 
echo Ok! 
pause > nul 
exit

Sí, solo tendrías que cambiar el .txt
Ç_Ç Yo ya me perdí xD, Tendré k relermelo de nuevo ;) Sige Así, MaxDragon Maestro HTML
Espero con ganas la siguiente lección maestro html!!! :D :D :D
mmm.... Cuánto más debemos esperar para la siguiente lección? :( :( :(
Disculpen, pero esto tiene alguna utilidad? Me lei las 3 primeras lecciones pero no le encuentro utilidad jeje
acabo de leer esto, me gustaría hacer una corrección, y aclara que batch no es un lenguaje de programación, sino mas bien un conjunto de sentencias e instrucciones con las que podemos manipular nuestra consola DOS.

Disculpen, pero esto tiene alguna utilidad? Me lei las 3 primeras lecciones pero no le encuentro utilidad jeje

antes era necesario saber utilizar batch para interactuar con el sistema, hoy con la interfaz gráfica ya no es necesario.
de todas formas sabiendo utilizar y aplicar algunas de sus palabras reservadas podemos solucionar algunos problemas que nuestro winbug nos pudiese ocasionar.

quien haya trabajado bajo algun linux (en sus viejas versiones), seguramente estará mas familiarizado con el uso de instrucciones en consola.

un saludo
hola, soy nuevo, estos dias he estado mirando tutoriales de batch e intente hacer un script para apagar la pc en un tiempo determinado por el usuario, la cosa es q me gusta acostarme a dormir escuchando musica, entonces con este programa puedo hacerlo sin levantarme a apagar la pc

bueno, dejo el codigo, despues de q me pide el tiempo se cierra la ventana y no hace nada, a ver si alguien me puede corregir

@echo off

:tiempo

set /p tiempo=En cuanto tiempo quieres apagar la pc? (minutos): 
if %tiempo% LSS 9999 goto :sigo else echo Intentelo de nuevo && goto :tiempo

:sigo
set /a seg=tiempo*60
shutdown -s -t %seg% -c "Gracias por usar el apagador automatico de PCs de Muñoz's garbages"
goto menu

:menu
cls
echo --------------Menu---------------
echo |1- Cancelar apagado            |
echo |2- Modificar tiempo de apagado |
echo |3- Cerrar programa             |
echo ---------------------------------
echo.
set /p op=Elija una opcion: 

if %op%==1 goto cancel
if %op%==2 goto mod
if %op%==3 goto salir else echo Error, introdujo una latra o un numero mayor a 3, intentelo de nuevo && goto menu

:cancel
shutdown -a
echo El proceso fue cancelado, presione una tecla para volver al menu...
pause > nul
goto menu

:mod
shutdown -a
goto tiempo

:salir
echo Gracias por usar el apagador automatico de PCs de "Muñoz's garbages ®", presione una tecla para salir...
pause > nul
exit

saludos y gracias desde ya! :)

Edito: encontre el primer error, y era un problema con comillas en el comentario del comando de apagar, lo arregle, pero despues de eso tendria q ir al menu y se cierra automaticamente la ventana, a ver si me pueden ayudar je, gracias!

Edito: el otro problema esta en los signos estos | en el menu, el script ya funciona



tengo otra duda, si quiero agregar algo al registro, es lo mismo poner "reg add hkey_current_user" que poner "reg add hkcu"? xq lo he visto escrito de las 2 maneras y me surgio esa duda, gracias si es q contestan je

saludos
Hola a todos,

A ver si podéis ayudarme, estoy con un scrip en bat en cual tengo q sacar la hora del sistema y sumarle un minuto...

set hora=%time /T%
set suma=%dateadd(mi,1)%
set /a TIMESTAMP=%hora%%suma%

El caso es que al pasar el valor a TIMESTAM de da 0 o me dice que falta operando o si añado un + me da el +...

Me quedo por aquí, que el curso esta muy bien, a ver si con un poco de suerte funciona algún enlace para ver las partes chungas...

Gracias por el curso y por la ayuda.

Saludos!
Soy de un nivel mucho mas bajo que vosotros... :(
Y necesito crear un programa en el que alguien que lo tenga pueda enviar datos y que se cambien tambien en el programa...
Gracias (Lo siento si me he explicado mal...)
hola bueno os recomiendo que tambien postees la parte "destructiva" de este lenguaje porque asi los usuarios sabran como defenderse y tambien posteis unas recomendaciones a la hora de abrir un archivo bat!!

porque¿? aparte de que aprendemos a defendernos tambien aprendemos a protegernos

tambien se batch pero he ido olvidandolo xD tal vez otro dia lea este curso jeej

os felicito xD
Att. Kevin
Pues eso, el curso está muy bien, pero...............¿actualmente para que sirve el batch?, yo programaba ficheros bat (antes se les llamaba así) antes de la aparición de windows (incluido el windows 3.0) para hacer menus para mis programas hechos en GW-BASIC, Pascal, Fortran,............... o para automatizar las copias se seguridad y otras lindezas por el estilo, pero ahora...[:?][:?][:?][:?][:?][:?][:?][:?][:?]

Si sirve para algo más que para pasar el rato me lo decis. Porque todavia me acuerdo [:)][:)][:)][:)]


.
Hola:

Windows aún utiliza los archivos de comandos bat. Batch, al igual que siempre (desde que comencé a intrusear los computadores, hace al menos 6 años), se utiliza para automatizar operaciones. Por ejemplo, yo utilizo un archivo bat para remover el messenger que viene pre-instalado en Windows XP. Xampp utiliza archivos bat para configurar los distintos componentes del servidor. También utilizo otro bat para cambiar la ip:

ipconfig /release
ipconfig /flushdns
ipconfig /renew

Eso guardado en un archivo .bat lo ejecuto cuando descargo cosas desde, por ejemplo, rapidshare o megaupload.
bueno yo tambien se batch i creo que los que se an mirado php tendrian que saber algo por cual el ay codigos como else if i otros que son identicos
Buenas:
Quizás sea un poco tarde pero he hecho mi propia versión del batch para sacar las tablas. En mi opinion, este batch es mas simple y te permite modificar el numero hasta donde quieras que cuente. Hechen un vistazo y comenten.

@Echo off
: ini
echo Que tabla de multiplicar quieres?
set /p numero=
set contador=0
set fin=16

: bucle
set /a resultado=%numero%*%contador%
echo %numero%x%contador%=%resultado%
set /a contador=contador+1
If %contador%==%fin% (goto finbucle) else (goto bucle)
: finbucle
echo pulsa una telca para reiniciar
pause > nul
cls
goto ini