Zeichen in Dateiname löschen per Batch
Hallo liebe Leute,
ich möchte per Batch-Durchlauf Dateinamen nach dem Muster `crp[RestName].pdf' in `[RestName].pdf' umwandeln und dabei verschieben.
Mir hat dieser thread #241018 Batch - Dateien umbenennen Verschieben und Dateien von mit bestimmten Zeichen im Dateinamen von der Umbenennung ausschliessen bereits geholfen, und mit
geschieht bereits der grösste Teil dessen, was ich möchte. Nur: die Datei soll nicht nach dem sechsten Buchstaben abgeschnitten werden, sondern der Rest des Namens (der von Datei zu Datei verschieden und unterschiedlich lang ist) beibehalten werden. Ich habe irgendwoanders gelesen, daß das mit `l' oder `-l' gehen müsste, und habe also in der vorletzten Zeile `6!' hierdurch (und anderes...) ersetzt, aber erfolglos.
Kann mir einer von Euch alten Hasen weiterhelfen? Das wäre ein Riesenhilfe!
Danke im Voraus,
Peter
ich möchte per Batch-Durchlauf Dateinamen nach dem Muster `crp[RestName].pdf' in `[RestName].pdf' umwandeln und dabei verschieben.
Mir hat dieser thread #241018 Batch - Dateien umbenennen Verschieben und Dateien von mit bestimmten Zeichen im Dateinamen von der Umbenennung ausschliessen bereits geholfen, und mit
@echo off & setlocal EnableDelayedExpansion
::
set src_dir=C:Quelle
set dest_dir=C:iel
::
for %%a in (crp*.pdf) do (
move "%src_dir%\%%a" "%dest_dir%"
Set "DateiName=%%~a"
ren "%dest_dir%\%%a" "!Dateiname:~3,6!.pdf"
)
Kann mir einer von Euch alten Hasen weiterhelfen? Das wäre ein Riesenhilfe!
Danke im Voraus,
Peter
Please also mark the comments that contributed to the solution of the article
Content-Key: 61448
Url: https://administrator.de/contentid/61448
Printed on: May 4, 2024 at 14:05 o'clock
2 Comments
Latest comment
Schau mal in der Hilfe zu SET nach, also set /?.
Im kurzen:
beim "!Dateiname:~3,6!.pdf" steht die 3 ja fürs Zeichen abdem der Dateiname benutzt wird, die 6 für das Zeichen bis zu dem der Dateiname benutzt wird.
gibst du das zweite zeichen als negativ an wird von hinten her gerechnet. also -1 wäre dann bis zum vorletzten Zeichen des Namens.
Gibst du nichts an wird bei der ersten Zahl vom Anfangsbuchstaben, bei der Zweiten Zahl vom letzten Buchstaben ausgegangen.
d.h. bei dir müstest du also einfach die zweite Zahl weglassen:
miniversum
Im kurzen:
beim "!Dateiname:~3,6!.pdf" steht die 3 ja fürs Zeichen abdem der Dateiname benutzt wird, die 6 für das Zeichen bis zu dem der Dateiname benutzt wird.
gibst du das zweite zeichen als negativ an wird von hinten her gerechnet. also -1 wäre dann bis zum vorletzten Zeichen des Namens.
Gibst du nichts an wird bei der ersten Zahl vom Anfangsbuchstaben, bei der Zweiten Zahl vom letzten Buchstaben ausgegangen.
d.h. bei dir müstest du also einfach die zweite Zahl weglassen:
"!Dateiname:~3!.pdf"
miniversum