2017-08-14 3 views
0

Ich habe einen Befehl, den ich verwende, um Audit-Bericht auf täglicher Basis zu erhalten. Ich möchte es in Windows Scheduler mit dem Befehl oder Skript planen. Es kann .bat oder .cmd Scripting sein. Der Befehl lautet:Windows-Skript, um Datum zu ändern und Befehl auszuführen

Also in diesem Befehl wird alles gleich verlassen MM, DD und YY Wie kann ich Tag, Monat und Jahr vom Befehl ersetzen?

Das Datum ist ein Tag vorheriges Datum der aktuellen. Zum Beispiel wird der Befehl voraussichtlich am 7. Juli 2017 um 09.00 Uhr laufen, in diesem Fall wird der Befehl sein:

<Install_Path>\nbauditreport.exe -sdate "07/06/17 00:00:00" -edate "07/06/17 23:59:59" 

Wie kann ich das Skript für das gleiche schaffen?

Antwort

0

Soll Ihre Maske "MM/DD/YY" nur 2 Ziffern für das Jahr haben?
Dann ändern Sie in der folgenden Charge nur zwei yy, aber lassen Sie das Gehäuse wie es ist.

@echo off 
For /f %%Y in (
    'powershell -NoP -C "(get-date).AddDays(-1).ToString(\"MM\/dd\/yy\")"' 
) Do Set Yesterday=%%Y 
"X:\Path\to\nbauditreport.exe" -sdate "%Yesterday% 00:00:00" -edate "%Yesterday% 23:59:59" 

Planen Sie diese Charge ein.

+0

Dank @LotPings, Kann ich das Datum in Skript vom 15.08.17 bis 15.08.17 ändern, da ich das Format des Datums MM/TT/JJ benötige. –

+0

Entschuldigung, das '/ 'im Datumsformat musste mit einem Backslash' \/versehen werden, um sie literal zu haben. Oben geändert. – LotPings

+0

Danke für das Skript. Problem gelöst. :-) –

Verwandte Themen