Leerzeichen per Batch entfernen vor der Weiterbearbeitung
Hallo zusammen,
gibt es eine Möglichkeit, per Batch alle Leerzeichen in einem Dateinamen durch "-" zu ersetzten?
Das Leerzeichen ist nicht immer an der gleichen Stelle!
Hab hier einen Copy-Joby, welcher abbricht, wenn die Datei ein Leerzeichen inne hat!
Beispieldateinamen: "Import 1.csv" "Im port2.csv" "Import3 .csv"
gehofftes Ergebnis: "Import_1.csv" "Im_port2.csv" "Import3_.csv"
Vielen Dank für die Hilfe!
da Hartl
gibt es eine Möglichkeit, per Batch alle Leerzeichen in einem Dateinamen durch "-" zu ersetzten?
Das Leerzeichen ist nicht immer an der gleichen Stelle!
Hab hier einen Copy-Joby, welcher abbricht, wenn die Datei ein Leerzeichen inne hat!
set workdir=c:\temp\import\
set files=
dir %workdir% /A-D/B/OGD>%temp%files.tmp
for /f "tokens=1* delims=" %%i in (%temp%files.tmp) do if not defined files set "files=%%i"
del %temp%files.tmp
echo %files%
copy %workdir%%files% c:\temp\import\ImportFile.csv
Beispieldateinamen: "Import 1.csv" "Im port2.csv" "Import3 .csv"
gehofftes Ergebnis: "Import_1.csv" "Im_port2.csv" "Import3_.csv"
Vielen Dank für die Hilfe!
da Hartl
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 305218
Url: https://administrator.de/contentid/305218
Ausgedruckt am: 25.11.2024 um 03:11 Uhr
3 Kommentare
Neuester Kommentar
Moin daHartl,
sicherlich lassen sich auch per Batch Leerzeichen durch "_" oder alle "x" durch "u" ersetzen.
Schneller geht es aber, wenn du dieses hier
ersetzt durch
Also einfach alle "Pfade/und/Dateien mit eventuellen Leerzeichen" in Anführungszeichen setzt, damit diese als EIN Parameter erkannt werden.
Grüße
Biber
sicherlich lassen sich auch per Batch Leerzeichen durch "_" oder alle "x" durch "u" ersetzen.
Schneller geht es aber, wenn du dieses hier
copy %workdir%%files% c:\temp\import\ImportFile.csv
ersetzt durch
copy "%workdir%%files%" c:\temp\import\ImportFile.csv
Also einfach alle "Pfade/und/Dateien mit eventuellen Leerzeichen" in Anführungszeichen setzt, damit diese als EIN Parameter erkannt werden.
Grüße
Biber
Moin daHartl,
die Syntax dafür kannst du in der Hilfe zu Set (Set /?) nachlesen.
Demo am CMD-Prompt:
Grüße
Biber
die Syntax dafür kannst du in der Hilfe zu Set (Set /?) nachlesen.
...
Das Ersetzen von Umgebungsvariablen wurde folgendermaßen erweitert:
%PATH:str1=str2%
Dies erweitert die PATH-Umgebungsvariable, wobei jede Instanz von "str1" im
erweiterten Ergebnis mit "str2" ersetzt wird. ....
Demo am CMD-Prompt:
C:\Users\Biber>set "StrMitSpace=Ein String mit Spaces"
C:\Users\Biber>echo StrMitSpace=[%StrMitSpace%] Ersetzt=[%StrMitSpace: =_%]
StrMitSpace=[Ein String mit Spaces] Ersetzt=[Ein_String_mit_Spaces]
Grüße
Biber