holas nuevamente
Estaba haciendo un programitita y me salto este error 'No se esperaba 2a:~6 en este momento.'
aquí el code
::@echo off
:main
goto pausa
pause
goto:EOF
:pausa
set /s Seg=5
set /p hora=%TIME%
set /s cont=0
set /s mas=1
:Pbluse
:Sbluse
set /p a=%TIME%
if %hora:~6,2% EQU %a:~6,2% then goto Sbluse
set /s cont= %cont% + %mas%
if %cont% LEQ %Seg% then goto Pbluse
goto:EOF
resultado de la ejecución de m.bat
E:\Documents and Settings\Facundo\Escritorio>m.bat
E:\Documents and Settings\Facundo\Escritorio>pause
Presione una tecla para continuar . . .
E:\Documents and Settings\Facundo\Escritorio>set /S hora=11213211
E:\Documents and Settings\Facundo\Escritorio>set /S a=11213211
E:\Documents and Settings\Facundo\Escritorio>pause
Presione una tecla para continuar . . .
No se esperaba 2a:~6 en este momento.
E:\Documents and Settings\Facundo\Escritorio>if ~6,2a:~6,2 then goto SbluseE:\Do
cuments and Settings\Facundo\Escritorio>
es el primer programita que hago en Batch
espero puedan ayudarme ....
SAluda atentamente (yo)
no entendi =|
que keres hacer ? xD
saludos
holas
explicop:
Lo que quiero hacer es ver la hora, sacarle los segundos, guardarlos en una variable, entrar en un bluse (estructura repetitiva), el cual e cada bes que se ejecute haga lo mismo pero con otra variable y verifica: si lavariables con los segundos que obtuve antes del bluse es = a la que obtuve dentro de el es porque no paso un segundo pero si son distintas entonces si paso.
y eso en otro bluse que suma otra variable que cuando esta alcansa tal balor sale del bluse.
por si comprendes algo de VB te dejo este code:
dim segundos as integer
dim intcont as integer
dim strTime as tring
strtime=Time
segundos=10
intcont=0
do
do
if Time<>strtime then exit do
doevents
loop
intcont=intcont+1
if intcont=> segundos then exit do
loop
halgo así e slo que quiero hacer en Batch
if %var% equ %var% then ?
nunca lo vi , no creo q este esa sentencia en if , o x lo menos yo la desconozco
set /s Seg=5
set /p hora=%TIME%
set /s cont=0
set /s mas=1
yo trataria sin el /s y /p
ahora si no entendi mal , keres q solo muestre los segundos y los valla mostrando '
:bucle
echo %time:~2,6%
ping -n 2 localhost >nul
goto bucle
no se si es eso xD
@ECHO OFF
CALL:SLEEP [SEGUNDOS]
GOTO:EOF
:SLEEP
SETLOCAL ENABLEEXTENSIONS
(SET TIME=)
IF "%1"=="" (GOTO:EOF)
(SET /A LIMIT=0)
(SET /A LIMIT=%1)
IF %LIMIT% LEQ 0 (ENDLOCAL & GOTO:EOF)
(SET /A CONT=0)
:TIME
(SET MIRROR1=%TIME:~-4,1%)
:INCREMEN
(SET MIRROR2=%TIME:~-4,1%)
IF NOT %MIRROR2%==%MIRROR1% (GOTO:COUNT)
GOTO:INCREMEN
:COUNT
(SET /A CONT +=1)
IF NOT "%CONT%"=="%LIMIT%" (GOTO:TIME)
ENDLOCAL
GOTO:EOF
Darioxhcx: nop
_m:
podrias explicarlop
para q son los ()
y lo prove y no me funciona...