realfilmkuh
Goto Top

CMD Set Variable if "0", wie?

Hallo zusammen,

ich möchte mit CMD eine Variable (Zeit) setzten, wenn die Variable %Timer% == "0" ist.

Also so ungefähr:
%Timer% == "0"

If %Timer% == "0" goto SetTimer
:SetTimer set %Timer% == %Time% + "6 Stunden" (also um 6 Stunden erhöhen)

und am Ende soll die Batch sich speichern (also das Dokument sollte gespeichert werden).

Weiß jemand die Befehle hierzu?

Danke face-smile

Content-Key: 625175

Url: https://administrator.de/contentid/625175

Printed on: April 26, 2024 at 17:04 o'clock

Member: Doskias
Doskias Nov 23, 2020 at 14:29:34 (UTC)
Goto Top
Moin,

ich verstehe deinen Wunsch aber den Sinn nicht. Es wird sicherlich eine Aufgabe geben wofür du das brauchst. Sag uns doch was das Ziel ist, vielleicht gibt es dafür ja eine andere und schickere Lösung.
Member: RealFilmKuh
RealFilmKuh Nov 23, 2020 at 14:50:14 (UTC)
Goto Top
Es wird eine Batch an MA ausgeliefert.

In dieser Batch ist die Variable %Timer% per default auf == "0" definiert.

Beim ersten Start, soll die Batch die aktuelle Zeit (%timestamp%) + 6 Stunden in den %Timer% ersetzten (if %Timer% == "0").
Dann wäre der %Timer% nun auf == 21:41 (also Aktuelle Zeit 15:41+ 6 Stunden).

Dann könnte ich weitere If Befehle einbauen wie.:
if time /t <= %Timer% goto Führe Programm aus
if time /t > %Timer% goto lösche diese Batch


Ziel des ganzen ist, der MA sollte nach dem ersten Start 6 Stunden damit arbeiten können. Beim nächsten Start, sollte die Batch gelöscht werden-> wenn der %Timer% > als %timestamp% ist

PS: timestamp muss natürlich auch deklariert werden ( set timestamp=%DATE:/=-%_%TIME::=-%)
Member: Doskias
Doskias Nov 24, 2020 at 06:44:38 (UTC)
Goto Top
versteh ich nicht. Du willst den Mitarbeitern was verteilen, womit sie "nur" 6 Stunden bei der ersten Anmeldung arbeiten können und danach nicht mehr? Wo steckt da der Sinn?
Member: RealFilmKuh
RealFilmKuh Nov 24, 2020 updated at 06:59:40 (UTC)
Goto Top
Das ist die Vorgabe meines Kollegen face-big-smile

so nun zurück zur Frage, weiß jemand wie ich im CMD die Zeiten addieren kann? also 08:00 + 6 Stunden wären ja 14:00

also:

set timestamp=%DATE:/=-%_%TIME::=-%

set timer=%timestamp% + 6 Stunden?
Member: Doskias
Doskias Nov 24, 2020 updated at 07:14:06 (UTC)
Goto Top
PowerShell:
$Startzeit=get-date 
$Endzeit=$Startzeit.addhours(6)

Ansonsten einfach mal bei Google "cmd add houres" eingeben und auf den ersten Link klicken. Das ist dann der hier:
https://stackoverflow.com/questions/33676042/how-do-i-add-time-to-a-wind ...
Member: RealFilmKuh
RealFilmKuh Nov 24, 2020 at 08:23:03 (UTC)
Goto Top
ja MEGA face-smile


Vielen herzlichen DANK face-smile !!!