Kopieren von txt Dateien in Ordner mit dem Namen der txt Datei
Hallo,
ich möchte mit einer batch Datei alle txt-Dateien aus dem Ordner Texte in den Ordner Neu kopieren, aber dort nicht einfach hinein, sondern immer in einen Unterordner mit dem Namen der darin befindlichen *.txt Datei. (Also : jede txt führt zu einen Ordner mit dem gleichen Namen)
Mein Problem ist jetzt, dass er mir die Ordner nicht erstellt und sie somit auch nicht mit der *.txt Datei füllen kann. Ich sehe aber nicht den Fehler in der Batch.
Bis jetzt bin ich so weit gekommen:
Schon mal vielen Dank im Voraus
ich möchte mit einer batch Datei alle txt-Dateien aus dem Ordner Texte in den Ordner Neu kopieren, aber dort nicht einfach hinein, sondern immer in einen Unterordner mit dem Namen der darin befindlichen *.txt Datei. (Also : jede txt führt zu einen Ordner mit dem gleichen Namen)
Mein Problem ist jetzt, dass er mir die Ordner nicht erstellt und sie somit auch nicht mit der *.txt Datei füllen kann. Ich sehe aber nicht den Fehler in der Batch.
Bis jetzt bin ich so weit gekommen:
@echo off
setlocal
for %%i in ("Texte\*.txt") do (
set "k=%%i:~0,-4%"
md "%k%"
echo %k%
copy "Texte\%i%" "Neu\%k%\%i%"
)
pause
Schon mal vielen Dank im Voraus
Please also mark the comments that contributed to the solution of the article
Content-Key: 207704
Url: https://administrator.de/contentid/207704
Printed on: April 25, 2024 at 17:04 o'clock
9 Comments
Latest comment
Hallo Apeman,
mein Vorschlag:
Jetzt könnte ich noch einen Spruch über die SuFu und Google dalassen, mach ich natürlich nicht, weil ich ein Netter bin.
Ich halt einfach mal die Klappe (Kurt Beck würde sagen "das Maul", aber da bin ich mir doch zu fein für )
Liebe Grüsse.
mein Vorschlag:
@echo off
cd texte
for %%i in (*.txt) do (
md "%%~ni"
copy "%%~i" "%%~ni"
)
Jetzt könnte ich noch einen Spruch über die SuFu und Google dalassen, mach ich natürlich nicht, weil ich ein Netter bin.
Ich halt einfach mal die Klappe (Kurt Beck würde sagen "das Maul", aber da bin ich mir doch zu fein für )
Liebe Grüsse.
Also z.B. so (Pfad sollte bei
€dit:
Da passt
Gruss!
cd
angepasst werden):@echo off
cd /d "X:\users\user\documents and settings\texte"
for %%i in (*.txt) do (
set "filename=%%~ni"
set "fileextension=%%~xi"
setlocal enabledelayedexpansion
md "!filename!"
copy "!filename!!fileextension!" "!filename!"
endlocal
)
€dit:
Da passt
pushd
:@echo off
pushd "X:\users\user\documents and settings\texte"
for %%i in (*.txt) do (
set "filename=%%~ni"
set "fileextension=%%~xi"
setlocal enabledelayedexpansion
md "!filename!"
copy "!filename!!fileextension!" "!filename!"
endlocal
)
popd &rem zurück zum Ausgangsordner
Gruss!