Seite 1 von 1
Batchdatei Aktuelle Zeit - 1 Stunde
#1
geschrieben 15. Januar 2008 - 14:50
Hallo Leute,
ich brauche dringend Eure Hilfe.
Es geht darum, dass ich in einer Batchdatei eine Variable brauche, in der die aktuelle Zeit-1h gespeichert ist. Sprich wenn es grade 14:23 ist dann soll in der Variable 13:23 stehen.
Danke schon einmal für Eure Hilfe!
MFG Campy
ich brauche dringend Eure Hilfe.
Es geht darum, dass ich in einer Batchdatei eine Variable brauche, in der die aktuelle Zeit-1h gespeichert ist. Sprich wenn es grade 14:23 ist dann soll in der Variable 13:23 stehen.
Danke schon einmal für Eure Hilfe!
MFG Campy
Anzeige
#2
geschrieben 15. Januar 2008 - 15:10
Schau dich hier mal um
administrator.de
dort werden der Umgang mit Datums und Zeitvariablen beschrieben.
so long
administrator.de
dort werden der Umgang mit Datums und Zeitvariablen beschrieben.
so long
#4
geschrieben 18. Januar 2008 - 01:51
Warum sollte das nicht gehen? Im Notfall, wenn's dafür nicht direkt eine Option gibt, splittet man den String halt in einzelne Variablen für HH MM SS, wandelt HH in einen Integer, zieht 1 ab und baut's wieder zusammen...
Bei *nix wäre das natürlich wieder einfach, nämlich per
Alternativ, wenn's gar nicht anders geht, könnte man die gewünschte Zeit natürlich auch von irgendeinem Server in der entsprechenden Zeitzone holen.
Bei *nix wäre das natürlich wieder einfach, nämlich per
date -d "-1 hour"
Alternativ, wenn's gar nicht anders geht, könnte man die gewünschte Zeit natürlich auch von irgendeinem Server in der entsprechenden Zeitzone holen.
Dieser Beitrag wurde von ph030 bearbeitet: 18. Januar 2008 - 01:52
/fuck you - really, I mean it!
Zu verkaufen:
Xbox, komplett PC (WF Link)
Hardware, Games, Comics und noch mehr Zeug (eBay-KA Link)
Zu verkaufen:
Xbox, komplett PC (WF Link)
Hardware, Games, Comics und noch mehr Zeug (eBay-KA Link)
#5
geschrieben 18. Januar 2008 - 07:18
Such doch mal nach "Unix Utils". Da sollte eine date.exe bei sein. Die verhält sich ziemlich genauso wie der date Befehl unter Linux. Dort wäre also die anmerkung von ph030 anwendbar. Das wäre meiner Meinung nach auch das einfachste. Funktioniert natürlich nur dann, wenn du nichts dagegen hast auf externe ausführbare Dateien zuzugreifen (manchmal ist das halt unvorteilhaft, z.B. wenn man das Script verteilen möchte, dann müsste man die entsprechende .exe immer mitliefern).
#6
geschrieben 18. Januar 2008 - 08:33
Zitat (sкavєи: 18.01.2008, 07:18)
(manchmal ist das halt unvorteilhaft, z.B. wenn man das Script verteilen möchte, dann müsste man die entsprechende .exe immer mitliefern).
Ja du hast zwar Recht, allerdings handelt es sich um xx KB.
Aber einige würde so etwas stören, z.B. mich
Software is like sex. It is better when it's free.. (Linus Torvalds)
#7
geschrieben 18. Januar 2008 - 11:41
wenn man ne exe mitliefern muss,kann man gleich ein richtiges programm schreiben
Dieser Beitrag wurde von bLaCkRaBbIt bearbeitet: 18. Januar 2008 - 11:51
#8
geschrieben 18. Januar 2008 - 12:46
Richtig, was aber widerum Zeit kostet.
Software is like sex. It is better when it's free.. (Linus Torvalds)
#10
geschrieben 18. Januar 2008 - 20:48
Du musst doch nur in eine Txt-Datei nen Befehl setzen, aber ich kenn mich nicht mir Programmierung aus. Mag sein das du Recht hast.
Software is like sex. It is better when it's free.. (Linus Torvalds)
#11
geschrieben 18. Januar 2008 - 23:00
ist schon lange her,dass ich batch files geschrieben hab und bin nicht mehr so in der übung,aber anpingen, ping antwort empfangen, auswerten und anhand der auswertung das netzlaufwerk verknüpfen hört sich für mich schon aufwendig an. hier der quelltext für eine consolenanwendung:
Imports System.Net.NetworkInformation
falls du kein visual studio hast oder dich mit vb.net nicht auskennst, dann gib mir die adresse von server1,server2 und den net use befehl für server1 und server2, dann kompilier ich dir das.
Imports System.Net.NetworkInformation
Module Module1 Sub Main() If (New Ping).Send("server1").RoundtripTime > (New Ping).Send("server2").RoundtripTime Then Shell("hier den net use befehl für server1", AppWinStyle.Hide, True) Else Shell("hier den net use befehl für server2", AppWinStyle.Hide, True) End If End Sub End Module
falls du kein visual studio hast oder dich mit vb.net nicht auskennst, dann gib mir die adresse von server1,server2 und den net use befehl für server1 und server2, dann kompilier ich dir das.
#12
geschrieben 19. Januar 2008 - 12:35
Hi,
also so was in Batch zu machen ist kein Problem.
In der Variable %time% ist immer die aktuelle Zeit. Die ersten beiden set-Befehle zerlgen die Uhrzeit in Stunden und Minuten. Mit set /a kann man mit den Variablen rechnen und das letzte set schreibt die Uhrzeit - 1 Stunde in die Variable Zeit.
Gruß,
Stefan
also so was in Batch zu machen ist kein Problem.
@echo OFF set STUNDEN=%time:~0,2% set MINUTEN=%time:~3,2% set /a STUNDEN=%STUNDEN%-1 set ZEIT=%STUNDEN%:%MINUTEN% echo %ZEIT%
In der Variable %time% ist immer die aktuelle Zeit. Die ersten beiden set-Befehle zerlgen die Uhrzeit in Stunden und Minuten. Mit set /a kann man mit den Variablen rechnen und das letzte set schreibt die Uhrzeit - 1 Stunde in die Variable Zeit.
Gruß,
Stefan
#13
geschrieben 19. Januar 2008 - 13:41
sorry, letzter eintrag war nicht für diesen thread.
Dieser Beitrag wurde von bLaCkRaBbIt bearbeitet: 19. Januar 2008 - 13:44
Thema verteilen:
Seite 1 von 1