Ordner erstellen ll Datei hinein kopieren
Hallo zusammen,
ich möchte den Ordner "Vorlagen_Test" unter Downloads im Ordner "Test" erstellen und die Datei "Test.docx" hineinkopieren.
Allerdings wird bei diesem Code ein Ordner auf meinem Desktop folgendes erstellt: "Test(Ordner)-Vorlagen_Test(Ordner)-Text(WordDatei)
Könnt ihr mir sagen wo der Fehler liegt?
Ziel: Vorlagen_Test (Ordner) im Ordner unter Downloads/Test erstellen
und die Word Date im Vorlagen_Test Ordner reinkopieren.
Vielen Dank!
Liebe Grüße,
Alice
ich möchte den Ordner "Vorlagen_Test" unter Downloads im Ordner "Test" erstellen und die Datei "Test.docx" hineinkopieren.
Allerdings wird bei diesem Code ein Ordner auf meinem Desktop folgendes erstellt: "Test(Ordner)-Vorlagen_Test(Ordner)-Text(WordDatei)
set "Pfad=C:\Users\benutzername\Downloads\Test"
for /f "delims=" %%i in ('dir /b "%Pfad%*."') do md "%pfad% %%i\Vorlagen_Test
echo "Ordner Vorlagen_Test wurde erstellt"
timeout /T 30
for /f "delims=" %%i in ('dir /b "%Pfad%*."') do copy Test.docx "%pfad% %%i\Vorlagen_Test
echo "Test.docx wurde nach Vorlagen_Test kopiert"
timeout /T 30
echo "Vorgang beendet"
Könnt ihr mir sagen wo der Fehler liegt?
Ziel: Vorlagen_Test (Ordner) im Ordner unter Downloads/Test erstellen
und die Word Date im Vorlagen_Test Ordner reinkopieren.
Vielen Dank!
Liebe Grüße,
Alice
Please also mark the comments that contributed to the solution of the article
Content-Key: 322107
Url: https://administrator.de/contentid/322107
Printed on: April 23, 2024 at 09:04 o'clock
1 Comment
Moin Alice,
willkommen im Forum.
Also
1) brauchst du eine FOR-Anweisung für diese Aufgabe nur, wenn du z.B in JEDEM Unterordner von %Pfad% einen neuen Unterordner namens whatever anlegen willst oder JEDE Date aus einem Quellordner in diesen neuen Unterordner kopieren willst.
In deinem Fall - EIN Unterordner soll angelgt werden und EINE Datei soll kopiert werden - da reichen genau die Befehle, die du jetzt nach dem DO der FOR-Anweisung platzieren wolltest
2) Du kannst und solltest bei FOR-Anweisungen immer vorher ein So-tun-als-ob auf dem Bildschierm machen, also ein CMD-Fenster öffnen und die FOR-Anweisung (mit Laufvariablen mit einem Prozentzeichen, also %i statt %%i) und einem "DO echo befehle" statt "DO befehle" testen.
In deinem Fall also am CMD-Prompt
Im Code-Fenster sind die ersten beiden Zeilen eingegeben, die dritte kam per ECHO zurück.
Du kannst sehen,
Bitte spiel mal ein wenig mit der FOR-Anweisung und ECHO für das obige Beispiel am CMD-Prompt, damit du ein Gefühl dafür bekommst.
Wie erwähnt - in deinem Fall brauchst du zwar keine FOR-Klamotten, aber der Tag wird kommen...
Grüße
Biber
willkommen im Forum.
Also
1) brauchst du eine FOR-Anweisung für diese Aufgabe nur, wenn du z.B in JEDEM Unterordner von %Pfad% einen neuen Unterordner namens whatever anlegen willst oder JEDE Date aus einem Quellordner in diesen neuen Unterordner kopieren willst.
In deinem Fall - EIN Unterordner soll angelgt werden und EINE Datei soll kopiert werden - da reichen genau die Befehle, die du jetzt nach dem DO der FOR-Anweisung platzieren wolltest
2) Du kannst und solltest bei FOR-Anweisungen immer vorher ein So-tun-als-ob auf dem Bildschierm machen, also ein CMD-Fenster öffnen und die FOR-Anweisung (mit Laufvariablen mit einem Prozentzeichen, also %i statt %%i) und einem "DO echo befehle" statt "DO befehle" testen.
In deinem Fall also am CMD-Prompt
set "pfad=c:\users\benutzer\Downloads\test"
for /f "delims=" %i in ('dir /b "%Pfad%*."') do @echo [Ausgeführt würde:] md "%pfad% %i\vorlage_test
[Ausgeführt würde:] md "c:\users\benutzer\Downloads\test test\vorlage_test
Im Code-Fenster sind die ersten beiden Zeilen eingegeben, die dritte kam per ECHO zurück.
Du kannst sehen,
- am Beginn der Ausgabe steht ein einzelnes Anführungszeichen, welches kein schliessendes Anführungszeichen später als Gegenpart hat
- zwischen %pfad% und %i ist ein Leerzeichen (was keinen Sinn macht, es sei denn du wolltest einen Unterordner "test test" anlegen
- und überhaupt wird ja der Wert %i an gar keiner Stelle benötigt, und es funktioniert bei dir auch nur mit so wenig Problemen, weil es nur einen Unterordner in deinem %pfad% gibt
Bitte spiel mal ein wenig mit der FOR-Anweisung und ECHO für das obige Beispiel am CMD-Prompt, damit du ein Gefühl dafür bekommst.
Wie erwähnt - in deinem Fall brauchst du zwar keine FOR-Klamotten, aber der Tag wird kommen...
Grüße
Biber