Fecha de ayer

Hola,
Estoy preparando un batch de renombrado de archivos en DOS y en el nombre de mi archivo necesito obtener la fecha de ayer (algo así como getdate()-1).

PS: Ya consigo obtener la fecha en una variable y darle formato (p. ej.: nom_de_fichier_21112006.xls)

Si alguien puede ayudarme a salir de este obstáculo sería genial.
Gracias de antemano

1 respuesta

  • Votos
  • Fecha
  • Fecha descendente
  1. Buenas noches Gaetan,

    La cuestión de una fecha anterior me interesa también porque algunas de mis aplicaciones la utilizan.

    He resuelto el problema, pero la solución que tengo es pesada.

    Si alguien tuviera una solución ligera, sería maravilloso.

    Si quieres mi solución (pesada), puedo hacértela pasar.

    Buenas noches

    B.M.
    1. Hola,

      yo soy partidario de cualquier solución, incluso la más drástica...

      Edouard
    2. @EdouardBonsoir Edouard

      Tu peux prendre le fichier compressé dans lequel il y a :

      un fichier BAT d'exécution pour exemple,
      un fichier EXE sous DOS (c'est du CLIPPER)

      Bien vérifier qu'il n'y a pas de virus

      http://perso.orange.fr/bernard.mouille/dateav/DATEAV.ZIP

      Dis-moi ce que tu en penses

      Bonne nuit

      BM Buenas noches Edouard

      Puedes tomar el archivo comprimido en el que hay :

      un archivo BAT de ejecución como ejemplo,
      un archivo EXE bajo DOS (es CLIPPER)

      Verificar bien que no haya virus

      http://perso.orange.fr/bernard.mouille/dateav/DATEAV.ZIP

      Dime qué piensas

      Buenas noches

      BM
    3. @EdouardBuenas noches Edouard

      Con mis disculpas por este retraso, pero no había sido avisado por correo electrónico porque has creado un nuevo tema de conversación.

      La fuente del programa ejecutable es: es Clipper5

      Que tengas un buen día

      Bernard

      ------------------Archivo PRG----------------------

      * DATEAV.PRG - Recuperar una fecha diferente.
      * -------------------------------------------

      PARAMETERS DATEX

      IF PCOUNT()==0
      DATEX=-1
      ELSE
      DATEX=VAL(DATEX)
      ENDIF

      SET DATE FREN
      SET CENT ON
      XF=FCREATE("DATEAV.TXT",0)
      FWRITE(XF,DTOC(DATE()+DATEX))
      FCLOSE(XF)
      RETURN

      ----------------- Archivo Bat --------------------

      @ REM Parámetro a pasar : el número de días en positivo o en negativo : -15 o 15 por ejemplo.
      @ REM Sin parámetro = -1 por defecto.

      @DATEAV.EXE -15

      @ DATE >DATEJO.TXT /T
      @ ECHO Fecha del día : %DATE%
      @ DATE<dateav.txt echo="" fecha="" de="" ayer="" :="" date="" del="" d="" datejo.txt="">NUL
      @ DEL DATEAV.TXT >NUL
      @ PAUSE

      </dateav.txt>
    4. @Bernard.MouilleHola Bernard,

      Gracias por el código clipper, eso servirá para alguien, seguramente.

      De todos modos, me limité a hacer funcionar tu exe generando una fecha J-1 en un txt y otra J-8 en otro txt.

      Luego recupero mis fechas y las presento al teleópsico con For tokens...

      Después destruyo los txt.

      En fin, es pesado pero funciona "como un reloj".

      Y el objetivo, siendo solo hacer una llamada diaria a ese batch con una tarea programada y llamar a un script php con las fechas correctas, el procesamiento tampoco era muy pesado.

      En fin, como suele ocurrir, lo que cuenta es el resultado (para mí) y no la manera...