1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

batch bei datum ausführen

Discussion in 'Programmieren' started by Ufgu Fugullu, Feb 15, 2008.

Thread Status:
Not open for further replies.
  1. hallo zusammen,
    ich hoffe ihr könnt mir helfen, ich wollte nämlich per batch eine aktion durchführen an einem bestimmten datum, quasi wie ein terminkalender benutzen nur mit batch in einfach.
    ich weiß auch das es auch tools gibt wollte aber mal sowas in der richtung programmieren wenn man des dann so nennen kann :D .....
    danke schon ma im voraus
     
  2. Hnas2

    Hnas2 Ganzes Gigabyte

    Das ist doch eine recht einfach zu lösende Aufgabe.
    Mit dem date-Befehl lässt sich das aktuelle Datum abfragen und mit einem Vorgabewert vergleichen. In Abhängigkeit davon kann die Batch-Folge zu den weiteren Befehlen verzweigt werden.
     
  3. mhh mit den date befehlen hab ich noch nie gearbeitet, weiß das bei date das datum angezeigt wird, aba wie ich das weiter benutzen muss:confused:....kann mir bitte wer helfen
     
  4. Hnas2

    Hnas2 Ganzes Gigabyte

    Nimm einfach mal die Befehlszeile
    Code:
    set xx=%date%
    in deine Batch.
     
  5. irgendwie krich ich des gar nicht gebacken, die xx stehen doch für zwei zahlen oder nicht!?.......verstell ich mit set dann nich das datum??......wäre nett wenn jemand nen ganzen code programmiert der zb am 28.02.08 eine meldung anzeigt wie zb hallo.......danke schon ma für die antworten
     
  6. Hnas2

    Hnas2 Ganzes Gigabyte

    bitte schön:
    Code:
    set xx=16.02.2008
    set yy=%date%
    if not %xx%==%yy% exit
    echo hallo
    pause
    
     
  7. Urs2

    Urs2 Megabyte

    Eine Batch ist wohl kaum der richtige Weg.
    Die Batch kann nur etwas tun, wenn sie läuft - im Ruhezustand kann sie nicht wissen, dass sie "jetzt" etwas tun sollte.

    Du müsstest die Batch also jetzt starten... und sie prüft dann jede Sekunde, ob schon der 28.Februar ist...
    Wenn dazwischen der PC neu gestartet wird, ist die Batch weg.

    Du kannst zwar die Batch von Hnas2 in den Autostart legen, damit sie bei jedem Start das Datum prüft, aber...
    ...wenn Du den PC am 27.2. in den Ruhezustand legst, am 28.2. weiterarbeitest, und erst am 29.2. einen Neustart machst, wird die Batch den 28.Februar schlicht verschlafen haben!

    Kannst Du die Aufgabe nicht mit den "Geplanten Tasks" von Windows lösen? Ausführen als einmaliger Task?

    Gruss Urs
     
  8. RealC++

    RealC++ Kbyte

    Die Batch muss in den Autostart aber das mit dem Verschlafen dürfte zu lösen sein:
    Die Batch übergrüft einfach zusätzlich immer noch ob das Datum schon verstrichen ist.
     
  9. Urs2

    Urs2 Megabyte

    Sicher könnte sie das. Wenn das Jahr nicht verglichen wird, meldet sie am 29.Februar dann einfach:

    "Tschuldigung, ich hatte den einzigen Grund für meine Existenz leider verpennt...
    ...kann ja mal vorkommen... nächstes Jahr werde ich mir mehr Mühe geben..."

    Gruss Urs
     
  10. ookay....ich hab nu was ich brauch.....danke schöön an alle, das mit dem autostart und so werd ich ma schaun, wollt nur ma schaun wie sowas gehn würde.......dankee
     
Thread Status:
Not open for further replies.

Share This Page