klette84
Goto Top

Datein mit Ausführungszeichen umbenennen

Hallo,

ich hab mir eine Batch zusammen geschraubt die Datein sortiert. Dies klapt auch recht gut, bis auf Datein die ein "!" enthalten.

Ich möchte daher gerne die Datein vorher per Batch umbenennen die ein "!" Ausrufezeichen enthalten. Aber irgend wie beist dich die Katze in den Schwanz...


setlocal EnableDelayedExpansion

for %%i in ("%Pfad%*.*") do (
set Datei=%%~nxi
set "Datei2=!Datei:!=!
RENAME "!Datei!" "!Datei2!"
)

Könnt ihr mir eine Lösung zeigen?

Content-Key: 186374

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

Ausgedruckt am: 28.03.2024 um 20:03 Uhr

Mitglied: bastla
bastla 12.06.2012 um 22:58:48 Uhr
Goto Top
Hallo Klette84 und willkommen im Forum!

Versuch es so:
setlocal
for %%i in ("%Pfad%*.*") do call :ProcessFile "%%i"  
goto :eof

:ProcessFile
set "Datei=%~nx1"  
ren %1 "%Datei:!=%"  
goto :eof
Grüße
bastla
Mitglied: pieh-ejdsch
pieh-ejdsch 12.06.2012 aktualisiert um 23:17:10 Uhr
Goto Top
Zitat von @Klette84:
beist dich die Katze in den ###...

Ja da hättste Mal statt Dich sich geschrieben, dann wäre diese hach so intelligente Zensur vllt net so Rabiat gewesen und würde völlig harmlose Sätze verschandeln!
Diese Fuzzi-Logic mit den ewigen Hintergedanken ist voll für das Hinterteil.

Man(n) sowas im deutschen Sprachraum - bzw. hier bei ADMINISTRATOR - ich verstehs net.

Ahja - jetzt wohl doch. Die Scriptkiddies kommen in den Ferien ja oft hier vorbeigeschlendert.

Gruß Phil
Mitglied: Klette84
Klette84 12.06.2012 um 23:21:13 Uhr
Goto Top
genial danke dir. Es kann doch sooo einfach sein!

Wenn ihr möchtet könnt ihr die ganze Batch haben nachdem ich den "Bug" beseitigt habe...

Die Batch ändert Dateinamen um in geändert am <TT.MM.JJJJ HH_MM> - <Datei> oder in <ZZZZ> - <Datei>