andreas0815
Goto Top

Varianble .ti funktioniert nicht innerhalb einer .bat

Hallo zusammen,

ich habe mit bat-Erstellung kaum Erfahrung, höchstens mal Programme starten...

Nun will ich eine einfach kleine Aufgabe programmieren und scheitere.

Mein Problem:
Ich will das Datum einer Datei in eine Variable speichern. Ganz einfach.

Am Command Prompt geht das mit:
for %i in ("D:\test.txt") do set olddate=%~ti

Ein entsprechendes
echo %olddate% gibt dann z.B. aus

21.05.2019 15:59


Soweit, so gut.
Wenn ich diese eine Zeile nun aber in eine test.bat schreibe und am Command Prompt dann die test.bat ausführe, bekomme ich eine Errormeldung:

"Die folgende Verwendung des Pfadoperators zur Ersetzung eines Batchparameters ist ungültig: %~ti

Geben Sie...blala..."


Was mache ich falsch? Warum ist es ein Unterschied, ob ich es am Command Prompt eingebe oder in einer .bat ausführe?
by the way: Windows7 Pro.

Danke schon mal...

Content-Key: 453837

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

Ausgedruckt am: 19.03.2024 um 09:03 Uhr

Mitglied: Dani
Lösung Dani 21.05.2019 aktualisiert um 16:41:27 Uhr
Goto Top
Moin,
Batch ist bei mir schon lange her... aber ich meine in Skripten ist %%~ti notwendig.
Genauso bei der Schleife wird aus %i ein %%i.


Gruß,
Dani
Mitglied: Pjordorf
Lösung Pjordorf 21.05.2019 um 17:17:38 Uhr
Goto Top
Hallo,

Zitat von @Andreas0815:
Wenn ich diese eine Zeile nun aber in eine test.bat schreibe und am Command Prompt dann die test.bat ausführe, bekomme ich eine Errormeldung:
In einer Batch werden die % verdoppelt. Schreibe in deiner Batchdatei
for %%i in ("D:\test.txt") do set olddate=%%~ti  

Gruß,
Peter
Mitglied: Andreas0815
Andreas0815 21.05.2019 um 18:35:58 Uhr
Goto Top
Danke.
Tatsächlich, das war es. Mir fehlen echt die Grundlagen.