Dateiname in Textdatei via Batch
Hallihallo,
mein Problem ist wahrscheinlich für den Ein oder Anderen recht trivial, für mich als Anfänger jedoch schwieriger als gedacht. :-P
Ich kopiere per Batch immer die neueste Datei von einem Quellverzeichnis in ein Zielverzeichnis. Jetzt würde ich gerne den Dateinamen, der kopierten Datei zusätzlich in eine Textdatei+%random% (z.B. test12345.txt) schreiben.
Kann mir jemand eine passende Zeile im besten Fall sogar mit kurzer Erklärung geben, damit ich's auch für die Zukunft verstehe. Das wäre sehr freundlich.
MfG
Pluto
mein Problem ist wahrscheinlich für den Ein oder Anderen recht trivial, für mich als Anfänger jedoch schwieriger als gedacht. :-P
Ich kopiere per Batch immer die neueste Datei von einem Quellverzeichnis in ein Zielverzeichnis. Jetzt würde ich gerne den Dateinamen, der kopierten Datei zusätzlich in eine Textdatei+%random% (z.B. test12345.txt) schreiben.
echo off & setlocal
set source=SOURCE
set target=TARGET
for /f "delims=" %%a IN ('dir /B /S /A-D /O-D "%source%\*.pptx"') DO @(copy "%%a" "%target%" & goto :end)
:end
Kann mir jemand eine passende Zeile im besten Fall sogar mit kurzer Erklärung geben, damit ich's auch für die Zukunft verstehe. Das wäre sehr freundlich.
MfG
Pluto
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 294914
Url: https://administrator.de/contentid/294914
Ausgedruckt am: 22.11.2024 um 17:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo Pluto,
Die hinzugekommene Zeile 6 erläutert:
%RANDOM% ist eine Variable die eine Zufallszahl zwischen 0 und 32767 generiert
>"c:\textdatei%RANDOM%.txt" das leitet den Pfadnamen der kopierten Datei welcher in %%a enthalten ist in die Textdatei um.
Hoffe das war verständlich.
Gruß jodel32
@echo off & setlocal
set source=SOURCE
set target=TARGET
for /f "delims=" %%a IN ('dir /B /S /A-D /O-D "%source%\*.pptx"') DO @(
copy "%%a" "%target%"
echo "%%a">"c:\textdatei%RANDOM%.txt"
goto :end
)
:end
Die hinzugekommene Zeile 6 erläutert:
%RANDOM% ist eine Variable die eine Zufallszahl zwischen 0 und 32767 generiert
>"c:\textdatei%RANDOM%.txt" das leitet den Pfadnamen der kopierten Datei welcher in %%a enthalten ist in die Textdatei um.
Hoffe das war verständlich.
Gruß jodel32
Zitat von @plutowitsch:
Hallo jodel32,
danke für deine Hilfe!
Hat (fast) wunderbar geklappt!
Vor dem "goto :end" fehlte noch ein "&"-Zeichen.
Nö, das ist nur nötig wenn du das goto mit einem anderen Befehl in eine einzige Zeile schreiben willst !Hallo jodel32,
danke für deine Hilfe!
Hat (fast) wunderbar geklappt!
Vor dem "goto :end" fehlte noch ein "&"-Zeichen.