Wie man das Datum aus einer Datei in eine bat-Datei?
Schreibe ich eine bat-Skript und das muss ich speichern das Datum aus einer Datei in eine variable. Wie kann ich das tun?
Verwende ich die variable um zu prüfen, ob die Datei älter als N Tage, so dass es schön wäre, um speichern Sie das Datum in einem format, das mir erlauben würde, zu tun, solche test.
- Hinweis: Diese sehr wahrscheinlich gar nichts zu tun, mit DOS, mit Ausnahme der syntax der Kommandozeilen-interpreter-Sprache, stammt aus diesen Tagen (und CP/M vorher). Sie würde nicht CP/M-tag, richtig?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Manipulation von Datum in batch-Dateien, die es fast unmöglich zu bekommen rechts in eine vernünftige Art und Weise. Die einzige Sache, die Sie tun können, ist zu unterstützen, Ihre Kultur und ignorieren den rest.
Allerdings, wenn Sie den Namen der Datei, in der parameter an die batch (oder ein Unterprogramm), die Sie verwenden können
%~t1
. Ansonsten ist die folgende:Auf meiner Maschine rauskommt als "2009-08-28 16:13" die können dann analysiert werden, in Ihre einzelnen Teile:
dies ist ein Unterprogramm aufrufen Sie können mit
und dann haben Sie die einzelnen Teile in Ihren jeweiligen Umgebungsvariablen. Entsprechend anpassen an Ihre Datum/Zeit-format. Dies macht man Regen Gebrauch von
for
als tokenizer.Sobald Sie die einzelnen Teile können Sie versuchen, herauszufinden, wie alt die Datei ist, indem Sie einfach den gleichen Prozess mit dem aktuellen Datum/Zeit und Subtraktion. Nicht viel Spaß, aber funktioniert.
Den batch-Befehl Sprache ist nicht wirklich bis zu der Aufgabe. Microsoft schlägt
PowerShell
.Für eine Diskussion, eine ähnliche Aufgabe mit PowerShell finden Sie unter powershell-Skript-to-delete-old-Dateien.
Hier ist eine batch-Datei, "Dateien Löschen, die älter als N Tage sind, aus einem einzigen Ordner".
Ersetzen Sie das löschen mit dem, was Sie tun müssen.