guma96
Goto Top

Syntaxfehler by rename.bat

Hallo,

ich bin ein Newbie auf dem Gebiet der Batch prog., habe mir aber ein ehrgeiziges Ziel gesetzt.
Mit einer Batchdatei hole ich im Abstand von 15 min ein immer anderers Bild von einem Wetterserver. Der Dateiname ist jedoch immer gleich, hier Radarbild.bmp .
Ich möchte nun die Bilddatei folgendermaßen benennen RadarDatum-Zeit.bmp

Mein batch sieht so aus:
Call timeset /s
REM (alle Variablen sind gesetzt)
set Zeit=%JJ%-%MM%-%TT%
rename Radarbild.bmp Radarbild%Zeit%.bmp
Call timeset /u
Die Batch timeset holt alle notwendigen Zeitvariablen und wird hier nur aufgerufen.
Ich bekomme immer den Hinweis das in der rename Zeile ein Syntaxfehler steckt aber wo ??

Vielen Dank für Anregungen
guma

Content-Key: 82664

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

Printed on: April 24, 2024 at 17:04 o'clock

Member: miniversum
miniversum Mar 09, 2008 at 18:57:34 (UTC)
Goto Top
Hast du deine Batchdatei mal umbenant?
Wenn deine Batchdatei "rename.bat" heist und darin der Befehl "rename" benutzt wird ruft sich die Batchdatei dadurch selbst wieder auf. Daher nie Namen für Batchdateiennehmen die einem Befehl entsprechen.
Member: -bexter-
-bexter- Mar 09, 2008 at 18:59:54 (UTC)
Goto Top
hast du es mal mit "ren" oder "move" statt "rename" probiert?
Member: guma96
guma96 Mar 09, 2008 at 19:09:17 (UTC)
Goto Top
Habe die bat umbenannt ...ohne Ergebnis und auch der ren Befehl ändert
nichts an einem unvermeidlichen Syntaxfehler

guma
Member: miniversum
miniversum Mar 09, 2008 at 19:33:01 (UTC)
Goto Top
Ändere mal die Zeile
rename Radarbild.bmp Radarbild%Zeit%.bmp
in
echo rename "Radarbild.bmp" "Radarbild%Zeit%.bmp"
und schau mal was er ausgibt. Ist vielleicht in der Variabeln %zeit% ein Leerzeichen oder so?
Wenn alles ok aussieht versuchs mal ohne das echo aber mit den "
Member: guma96
guma96 Mar 09, 2008 at 19:51:30 (UTC)
Goto Top
Die Zeile
echo rename "Radarbild.bmp" "Radarbild%Zeit%.bmp"
ergibt
rename Radarbild.bmp Radarbild2008-03-09_20-45.bmp

also doch eigentlich i.O. Oder
Member: miniversum
miniversum Mar 09, 2008 at 19:55:33 (UTC)
Goto Top
So sieht das aus?
Das past aber nicht mit der formatierung von Zeit zusammen. Die ist ja %JJ%-%MM%-%TT%.
Außerdem sind die " leider ncith zu sehen. Da würdest du sonst wissen ob Leerstellen davor oder danach vorhanden sind.
Versuchs bitte mal MIT den "
Member: guma96
guma96 Mar 09, 2008 at 20:04:38 (UTC)
Goto Top
Ich habe nicht den korrekten Dateinamen der Datei die umbenannt werden soll geschrieben:
Lieg der Hase hier im Pfeffer ??

rename Radarbild__default,property=default.bmp Radarbild%TIME%.bmp

mit echo kommt die Ausgabe

rename Radarbild__default,property=default.bmp Radarbild2008-03-09_20-45.bmp
Member: miniversum
miniversum Mar 09, 2008 at 20:16:19 (UTC)
Goto Top
ja daranliegt es! die @,= im Namen machen da die Probleme.
Aber MIT " geht es!

rename Radarbild@default,property=default.bmp Radarbild%Zeit%.bat
so gehts nicht!

rename "Radarbild@default,property=default.bmp" "Radarbild%Zeit%.bat"
so gehts!

Habs grade hier getestet
Member: guma96
guma96 Mar 09, 2008 at 20:17:37 (UTC)
Goto Top
Ich denke das Problem ist gelöst denn wenn ich

rename "Radarbild__default,property=default.bmp" "Radarbild%TIME%.bmp"

verwende funktioniert das Ganze face-smile

Danke für die Hilfe

Gruss guma
Member: guma96
guma96 Mar 09, 2008 at 20:31:34 (UTC)
Goto Top
Eine Frage noch.... die bat funktioniert ja nun, wie
kann ich erreichen das die batch nur im Hintergrund läuft ??

Danke
Member: -bexter-
-bexter- Mar 09, 2008 at 22:00:41 (UTC)
Goto Top
du meinst unsichtbar?

es gibt da ein Tool namens cmdow.
dieses runterladen und ins system32-verzeichnis verschieben.

anschließend direkt am anfang des batch scripts cmdow /HID oder ähnliches Aufrufen.. dann siehst keine schwarze Box mehr!

oder meintest du etwas anderes?

Gruß
Member: guma96
guma96 Mar 10, 2008 at 19:21:09 (UTC)
Goto Top
Nein, du hast das schon richtig erkannt.

cmdow ist schon ne tolle sache

Danke