Saludos
Estoy intentando hacer una especie de programador de tareas un tanto rústico con batch.
Lo que quiero hacer es que en una variable se guarde el día o el mes o el año (lo que yo quiera) de la variable de entorno %date% y luego la compare con un if para ejecutar una lista de comandos en caso de que el día coincida con el 1 o 4 o en definitiva el numero que yo quiera.
No se si me e explicado bien, no voy a poner un código de ejemplo porque no se que usar exactamente para poder sacar los dos primeros números (para el día) de la variable %date% y almacenarlos en otra variable.
No hace falta que me hagáis el código completo, ya que yo quiero que me digáis mas o menos los parámetros a usar y ya me lo monto yo, que sino no aprendo nada. A y sobretodo si esto es posible.
Gracias de antemano =)
Puedes usar extracción de caracteres.
set myvar=%time:~m,n%
Obtienes la subcadena desde la posición "m" hasta "n". Ve jugando con eso para obtener lo que deseas.
Otra manera es usar FOR.
for /f "tokens=1,2,3" %%a in ('echo %time%') do (
set a=%a%
set b=%b%
set c=%c%
)
Sin probar.
PD: También se puede usar time /t en el for.
y con
%date:~0,2%
tambien funcionaria?
set dia=%date:~0,2%
saludos
Ok, voy a probarlo. Gracias =)
Perfecto, justo lo que buscaba! Gracias! ;-)
Con el for tokens (que ya me olía que con ese parámetro se podía hacer) no me e aclarado, pero con el otro a sido muy fácil.
Por si alguien quiere saber la solución el código quedaría así:
@echo off
set myvar=%date:~0,2%
echo %myvar%
pause > nul
Esto devuelve el día que tiene asignado tu SO.