Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: supradyn_activo en 3 Julio 2010, 11:42 AM

Título: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 11:42 AM
@echo off
set fin="03/07/2010"
if %DATE%==fin
(erase /q "D:\a.txt"
)else(
erase /q "D:\b.txt"
)

NOTA del mod:

Pon el código con sus respectiva etiqueta, sino tu mensaje será borrado, primera y última advertencia.
Título: Re: batch Que falla?
Publicado por: Darioxhcx en 3 Julio 2010, 11:43 AM
if condicion ( bloke de codigo ) else ( otro bloke )

no estoy segurpo que se puedan agrupar con {} fijate
saludos
Título: Re: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 11:46 AM
tenias razon... no me acordaba pero.. sigue sin ir! :(
Título: Re: batch Que falla?
Publicado por: Darioxhcx en 3 Julio 2010, 11:49 AM
sacale las comillas al set

set fin=03/07/2010

y

if %DATE%==fin
es

if %DATE%==%fin%
Título: Re: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 11:53 AM
NADA :... :S


@echo off
set fin=03/07/2010
if %DATE%==%fin%
(erase /q "D:\a.txt"
)else(
erase /q "D:\b.txt"
)
Título: Re: batch Que falla?
Publicado por: Darioxhcx en 3 Julio 2010, 11:53 AM
saca erase
pone del

del /f /q /s archivo.txt
Título: Re: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 11:55 AM
NADA :S

@echo off
set fin=03/07/2010
if %DATE%==%fin%
(del /f /q /s"D:\a.txt"
)else(
del /f /q /s"D:\b.txt"
)
Título: Re: batch Que falla?
Publicado por: Darioxhcx en 3 Julio 2010, 11:58 AM
@echo off
set fin=03/07/2010
if %DATE%==%fin% (
echo la fecha es %fin%
) else (
echo la fecha es distinta a %fin%
)

pause > nul
Título: Re: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 12:00 PM
estamos en las mismas con mi codigo no va... xD
Título: Re: batch Que falla?
Publicado por: Darioxhcx en 3 Julio 2010, 12:02 PM
el mio si va
recien lo probe

fijate en los espacios

)else

deja un espacio entre los separadores ()
Título: Re: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 12:04 PM
pruebalo con este y veras...


@echo off
set fin=03/07/2010
if %DATE%==%fin%
(erase /q "D:\a.txt"
) else (
erase /q "D:\b.txt"
)
pause > nul
Título: Re: batch Que falla?
Publicado por: Darioxhcx en 3 Julio 2010, 12:06 PM
usa del
leiste algun manul de batch ?
anda a leer de nuevo y proba nuevamente
saludos
Título: Re: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 12:08 PM
@echo off
set fin=03/07/2010
if %DATE%==%fin%
(del /f /q /s "D:\a.txt"
) else (
del /f /q /s "D:\b.txt"
)
pause > nul

sigue = y... el erase y el del es lo MISMO
Título: Re: batch Que falla?
Publicado por: Darioxhcx en 3 Julio 2010, 12:10 PM

@echo off
set fin=03/07/2010
if %DATE%==%fin%(
del /f /q /s "D:\a.txt"
) else (
del /f /q /s "D:\b.txt"
)
pause > nul

Título: Re: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 12:11 PM
NADAAA
Título: Re: batch Que falla?
Publicado por: Darioxhcx en 3 Julio 2010, 12:12 PM
q error te sale '
a ver dame info , no soy adivino

tenes los archivos creados ?
Título: Re: batch Que falla?
Publicado por: supradyn_activo en 3 Julio 2010, 12:15 PM
si los tengo creados prueba el codigo y veras!
Título: Re: batch Que falla?
Publicado por: DA KILLER en 3 Julio 2010, 22:28 PM
Código (dos) [Seleccionar]
@echo off
set fin=03/07/2010
if %DATE%==%fin% (del D:\test.txt) else (del D:\try.txt)
pause > nul


Si funciona supradyn, estás seguro de que están en el disco "D" y no es en un sub-folder, y que "D:\" es un HDD y no un CD?

(*) Si es un CD es posible que no lo puedas borrar ya que no puedes alterar lo que ya está fijado magneticamente en el disco

(**) Y si es en un HDD y es un sub-folder debes dar la ruta completa o usar cd para llegar allí

-= EDITO =-

Me gustaría aclarar que lo probé en un mismo disco rígido (c:\) en una partición (f:\) y en otro HHD esclavo (G:\), además lo hice en una SD (H:\) y un USB (también en H:\) así que algo más debe estar generándote el error, te sugiero que nos digas con que errorlevel finaliza el batch, eso a veces ayuda, saludos
Título: Re: batch Que falla?
Publicado por: Napster.A530 en 21 Julio 2010, 05:06 AM
No puede ser asi??
Código (dos) [Seleccionar]
@echo off
date | find  "03/07/2010" && (goto Si) || else goto no
:si
del /q /f /s D:\a.txt
exit.
:no
del /q /f /s D:\b.txt
exit.

Título: Re: batch Que falla?
Publicado por: DA KILLER en 21 Julio 2010, 06:35 AM
en realidad debe ser ASI:

Código (dos) [Seleccionar]
@echo off
echo. %date% | find  "03/07/2010" && (goto si) || else (goto no)
:si
del /q /f /s "D:\a.txt"
exit
:no
del /q /f /s "D:\b.txt"
exit


ERRORES:

*) Pusiste "date" y es un comando para VER Y RECONFIGURAR la fecha, para SOLO VER LA FECHA se hace un "echo %date%".

**) Mal llamado a los labels (pusiste "goto Si" y el label es ":si" Batch DISTINGUE las mayúsculas y minúsculas en los labels).

***) Faltan paréntesis en la declaración del condicional negativo (pusiste "else goto no" y es "else (goto no)").

****) Faltan las comillas de la ruta al archivo a borrar.

Saludos
Título: Re: batch Que falla?
Publicado por: Hekaly en 21 Julio 2010, 15:36 PM
Y si cambiamos el == por EQU??

Suponiendo que los archivos esten creados.


@echo off
set fin=03/07/2010
if %DATE% EQU %fin% (erase /q "d:\a.txt" & echo borrado a.txt) else (erase /q "d:\b.txt" & echo borrado b.txt)
pause > nul
Título: Re: batch Que falla?
Publicado por: DA KILLER en 21 Julio 2010, 18:38 PM
Es lo mismo, solo que el que hizo el post nunca más le vimos el pelo...