chainsaw
Goto Top

Dateinamen mit Leerzeichen mit xcopy in einer Variable kopieren

Hallo Gemeinde,

Für euch bestimmt ein banales Problem:

Ich möchte mit folgendem Script aus einem bestimmten Ordner alle Dateien mit einer
bestimmten Dateiendung (alles als Variablen definiert) auch aus Unterordnern kopieren.

Das funktioniert soweit prima. Bis zu der Stelle an der Leerzeichen im Dateinamen
oder in Ordnernamen auftauchen. Das mag xcopy nicht.

Meins Script sieht so aus:

@echo off & setlocal

SET /p que=Bitte Quelle angeben (ganzen Pfad):
SET /p zie=Bitte Ziel angeben (ganzen Pfad):
Set /p dat=Bitte Dateiendung angeben (Bsp: pdf, jpg):

for /f %%f in ('dir /b /s %que%\*.%dat%') do xcopy %%f %zie%   
explorer %zie%

Mit dem setzen von Anführungszeichen komme ich nicht weiter - vielleicht setze ich die auch an der
falschen Stelle: "%que%" und "%dat%" führt nicht zum Ergebnis.

Könnt ihr mit hier weiterhelfen?
Danke und Gruß
Chainsaw

Content-Key: 232500

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

Printed on: April 18, 2024 at 10:04 o'clock

Member: emeriks
emeriks Mar 13, 2014 at 12:43:23 (UTC)
Goto Top
ja, falsche Stelle
xcopy "%%f" "%zie%"

@echo off & setlocal

SET /p que=Bitte Quelle angeben (ganzen Pfad):
SET /p zie=Bitte Ziel angeben (ganzen Pfad):
Set /p dat=Bitte Dateiendung angeben (Bsp: pdf, jpg):

for /f %%f in ('dir /b /s %que%\*.%dat%') do xcopy "%%f" "%zie%"   
explorer "%zie%"  

E.
Member: chainsaw
chainsaw Mar 13, 2014 at 12:51:23 (UTC)
Goto Top
Hallo emeriks,

Danke für die schnelle Antwort.

Haut aber nicht hin. Noch eine Idee?

Gruß chainsaw
Member: emeriks
emeriks Mar 13, 2014 at 12:55:04 (UTC)
Goto Top
Nimm mal das "echo off" raus. Dann werden die produzierten XCOPY-Befehle ausgegeben und Du kannst sie lesen. Vielleicht siehst Du dann den Wald ... face-wink

E.
Member: chainsaw
chainsaw Mar 13, 2014 at 13:07:28 (UTC)
Goto Top
Hallo emeriks,

ich kann den Wald (noch) nicht erkennen... face-smile

Das wird ausgegeben:

D:\batch\012_Dateien_aus_Unterverzeichnissen_zusammenführen>xcopy "D:\004_Datenrename\Kueche" "c:\test"
Datei Kueche nicht gefunden
0 Datei(en) kopiert

Der Batch zeigt nicht den gesamten Pfad an:

Statt: "D:\004_Datenrename\Kueche Wohnkultur" gibt xcopy nur "D:\004_Datenrename\Kueche" aus...

Jetzt ess ich erst mal eine Leberkässemmel... vielleicht werde ich da erleuchtet!
face-wink

Gruß chainsaw
Member: chainsaw
chainsaw Mar 13, 2014 at 13:58:29 (UTC)
Goto Top
Hallo,

der Leberkäse hat nicht geholfen face-sad

Noch jemand eine Idee?

Gruß chainsaw
Member: MrNetman
MrNetman Mar 13, 2014 updated at 22:35:46 (UTC)
Goto Top
z.B: echo %que%
zur Kontrolle der Eingabe und der Variablen

Wenn du statt dir /b "%que%"
dir "%que%" /b
eingibst, dann ist das Ergebnis anders. Aber nur bei dir. face-sad
Und Groß- und Kleinschreibung haben beim Pfad einen Einfluss.
Member: bastla
Solution bastla Mar 13, 2014, updated at Mar 23, 2014 at 22:02:46 (UTC)
Goto Top
Hallo chainsaw!

Versuch es mit dieser Zeile:
for /f "delims=" %%f in ('dir /b /s "%que%\*.%dat%"') do xcopy "%%f" "%zie%\"
Grüße
bastla
Member: chainsaw
chainsaw Mar 23, 2014 at 22:02:10 (UTC)
Goto Top
Hallo bastla,

sorry lieber spät als nie: Deine Lösung haut hin! Klasse vielen Dank!

Gruß chainsaw