{title}

Hallo zusammen. Erster Beitrag hier.
Ich suche nach einer Möglichkeit, einen Stapel für bereits vorhandene Dateien und Ordner auszuführen und beide umzubenennen, um einen Datums-/Zeitstempel zu erhalten. Das Original und das Endergebnis unten.
Anfangen mit:
abc00.eob
abc01.eob
/ abc00 (Ordner)
/ abc01 (Ordner)
Ändern:
abc00_20050318_09.33.45.eob
abc01_20050318_09.33.45.eob
/abc00_20050318_09.33.45
/abc01_20050318_09.33.45
Die genaue Formatierung des oben gezeigten Datums/der Uhrzeit ist nicht kritisch. Der Zweck hier ist, dass Dateinamen und Ordner eindeutig sind, aber jede Datei einen Ordner mit einem passenden Namen hat. Die Datei "abc00.eob" könnte einige Male am Tag, viele Tage hintereinander erstellt werden, und ich muss sie eindeutig halten. Dies alles muss in eine .bat-Datei eingebaut werden.
Danke für jeden Rat.

Dies kann für Sie arbeiten. Sie können bei Bedarf kosmetische Änderungen vornehmen:
@echo aus
Für/f "tokens = 1-7 delims =:/-," %% i in ('echo exit ^ | cmd/q/k "Eingabeaufforderung $ D $ T"') tun (
Für/f "-Token = 2-4 delims =/-, () skip = 1" %% a in ('echo. ^ | Date') do (
setze dow = %% i
setze %% a = %% j
setze %% b = %% k
setze %% c = %% l
setze hh = %% m
setze min = %% n
setze ss = %% o
)
)
Für/f %% g in (..) Geben Sie %% g %% g %% mm %% dd %% yy %% hh %% mm %% ss% ein.
Hoffe das hilft.

Alles, was es zurückgibt, ist "Das System kann die Datei nicht finden." Ich verstehe nur irgendwie, was dieser Stapel tut. Füttere ich es nicht richtig? Vielen Dank!

Das war wahrscheinlich meine Schuld. Ich habe die Datumsaufteilungslogik aus einer alten Batch-Datei übernommen, aber die Umbenennung aus dem Speicher geschrieben. Probieren Sie es so aus:
Für/f %% g in (dir/b.) Geben Sie %% g %% g %% mm %% dd %% yy %% hh %% mm %% ss% ein.
Für/f %% g in (dir/b.) Geben Sie %% g %% g %% mm %% dd %% yy %% hh %% mm %% ss% ein.
Viel Glück.
PS. Wenn Ihr Computer die Datums-/Uhrzeitlogik verarbeiten kann, sollten Sie die Verwendung von Windows-Skript in Betracht ziehen. Es ist viel einfacher und definitiv besser lesbar.

Wir kommen näher. Ich habe diese letzten Zeilen durch eine einfache REN ersetzt, da ich den Namen der Dateien kenne, mit denen ich mich befassen werde. Außerdem wird mit %% mm %% dd %% yy eine Literalzeichenfolge für den Dateinamen% g% mm% dd% yy gedruckt
Wenn ich das zusätzliche führende% aus (von %% mm) nehme, erhalte ich die Werte, aber sie sind alle durch ein Leerzeichen getrennt: 03 21 2005 Gibt es eine Möglichkeit, diese Leerzeichen zu entfernen?

Dies sollte es endlich tun. Während der Ausführung wird ein Fehler festgestellt, der jedoch ignoriert werden kann. Ich habe auch das zweite Vorkommen von% mm% in% min% geändert.
@echo aus
Für/f "tokens = 1-7 delims =:/-," %% i in ('echo exit ^ | cmd/q/k "Eingabeaufforderung $ D $ T"') tun (
Für/f "-Token = 2-4 delims =/-, () skip = 1" %% a in ('echo. ^ | Date') do (
setze dow = %% i
setze %% a = %% j
setze %% b = %% k
setze %% c = %% l
setze hh = %% m
setze min = %% n
setze/a ss = %% o: ~ 2
)
)
für/f "tokens = 1-2 delims =." %% w in ('dir/b .ecb') do (
ren %% w. %% x %% w% mm %% dd %% yy %% hh %% min %% ss%. %% x
)
Möchten Sie wirklich nicht zu WinScript wechseln?
Viel Glück.


Was für eine Herausforderung wäre das? Das Sein?

Downside wird heruntergeladen

Ich kann nichts herunterladen, wenn ich online bin. Hat jemand eine Idee, wie das Problem behoben werden kann? Ich habe versucht, alle Programme neu zu laden, aber es scheint nicht zu helfen.

Welchen Browser, welche Version? Haben Sie einen anderen Browser ausprobiert?

Beliebte Beiträge