Kopieren mit Batch
Hi,
ich möchte mit set /p einen Pfad in eine Variable einlesen und dann alles was sich darin befindet in einen ordner kopieren, wie funktioniert das?
ich möchte mit set /p einen Pfad in eine Variable einlesen und dann alles was sich darin befindet in einen ordner kopieren, wie funktioniert das?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 38110
Url: https://administrator.de/forum/kopieren-mit-batch-38110.html
Ausgedruckt am: 03.04.2025 um 13:04 Uhr
5 Kommentare
Neuester Kommentar
Moin netscape,
Falls auch Unterzeichnisstrukturen unterhalb von %quelle% mitkopiert werden sollen, dann besser "XCopy" statt "Copy" nehmen.
Siehe die einschlägigen Hilfen am CMD-Prompt oder Windows-Hilfe.
Gruß
Biber
...
set "ziel=c:\zielordner\Beispiel"
set /P "quelle=Bitte Quellpfad eingeben: "
if not [%quelle%] == if exist "%quelle%\*.*" copy "%quelle%\*.*" "%ziel%"
Falls auch Unterzeichnisstrukturen unterhalb von %quelle% mitkopiert werden sollen, dann besser "XCopy" statt "Copy" nehmen.
Siehe die einschlägigen Hilfen am CMD-Prompt oder Windows-Hilfe.
Gruß
Biber
...
set "ziel=c:\zielordner\Beispiel"
set "DateiMitGemerktemPfad=c:\meineDateien\Merkpfad.txt"
if not exist "%DateiMitGemerktemPfad%" (
set /P "quelle=Bitte Quellpfad eingeben: "
) ELSE (
set /P quelle=<%DateiMitGemerktemPfad%
)
if not [%quelle%] == if exist "%quelle%\*.*" (
copy "%quelle%\*.*" "%ziel%"
echo %quelle%>%DateiMitGemerktemPfad%
)
[ungetestete Skizze]
Gruß
Biber
Nein netscape,
eine Fortschrittsanzeige oder Vergleichbares gibt es nicht.
Du könntest natürlich beim Kopieren von einzelnen Dateien einen Fortschritt visualisieren:
.. statt der Zeile copy "%quelle%\*.*" "%ziel%" ...
..oder eine Anzeige nach dem Muster "Datei nn von 123 wird kopiert"...
Aber das halte ich für zu aufwändig.
Gruß
Biber
eine Fortschrittsanzeige oder Vergleichbares gibt es nicht.
Du könntest natürlich beim Kopieren von einzelnen Dateien einen Fortschritt visualisieren:
.. statt der Zeile copy "%quelle%\*.*" "%ziel%" ...
for %%i in (%quelle%\*.*) do call :copynextfile %%i
goto :eof
:copynextfile
cls
echo Dateien werden kopiert...%punkt%
copy %1 %ziel%
Set punkt=%punkt%.
goto :eof
..oder eine Anzeige nach dem Muster "Datei nn von 123 wird kopiert"...
Aber das halte ich für zu aufwändig.
Gruß
Biber