Buenas, ultimamente me he estado interesando en Batch y tenia una duda.
Para hacer una condicion a cerca de una variable uso esto:
if %opc%== xx goto yy
como podria poner esto mismo pero para indicar una desigualdad en lugar de una igualdad?
if %opc%¿? xx goto yy
Gracias.
EQU - igual
NEQ - no igual
LSS - menor que
LEQ - menor que o igual
GTR - mayor que
GEQ - mayor que o igual
if %V1% NEQ %V2%
si mal no recuerdo era asi, deberias fijarte
saludos
Gracias! por fin lo tengo! :D
Usando la explicación dada arriba estoy tratando de hacer uso de la desigualdad, pero no obtengo los resultados esperados, podria alguien revisar mi codigo y decirme en que parte estoy fallando.
@echo off
SET EXPIRA=10/09/2013
IF %DATE% GEQ %EXPIRA% goto expirado
IF %DATE% LSS %EXPIRA% goto noexpirado
:expirado
echo expirado
goto end
:noexpirado
echo no expira
:end
exit
Estás fallando en que sales de la ejecución antes d epoder mostrar la slaida de ehco... 8Exit), añade un pause antes del comando "exit", y listo.
De todas formas esa comprobación no te va a funcionar...ya que batch ordena y compara los números "mal"., ya que como comprenderás, el primer número de tu ejemplo es mayor que el de la fecha de hoy...
SET EXPIRA=10/09/2013
echo "%DATE:/=%" GEQ "%EXPIRA:/=%"
(http://img685.imageshack.us/img685/4206/captura2st.png)
Así que cambiar el orden de los números, así:
@echo off
SET EXPIRA=10/09/2013
Set "DATE=%DATE:~6,4%%DATE:~3,2%%DATE:~0,2%"
SET "EXPIRA=%EXPIRA:~6,4%%EXPIRA:~3,2%%EXPIRA:~0,2%"
Echo IF "%DATE:/=%" GEQ "%EXPIRA%"
if "%DATE:/=%" GEQ "%EXPIRA%" (Echo Expirado) ELSE (Echo No expira)
pause
(http://img545.imageshack.us/img545/6986/captura1o.png)
Saludos
Esta es la solución a mi problema, agradezco su colaboración y la pronta respuesta que me brinda teniendo en cuenta que recien me acabo de registrar en la comunidad.