Bestimmte Dateiendungen von einem (Unter-)Verzeichnis in ein identisches
Hallo zusammen,
und schon mal jetzt danke für eure Hilfe.
Nahe zu immer, wenn ich einen Codeschnipsel im Bereich Batchscripting benötigt habe,
bin ich bei euch fündig geworden - bis auf jetzt :D
Finde das Forum echt der Hammer!
So jetzt aber zum eigentlichen Inhalt.
Ich würde gerne aus einer Ordnerstruktur (inclusive den PNG-Dateien in Unterordner) alle Dateien mit der Endung .PNG (.png) in eine andere Ordnerstruktur kopieren/verschieben (ist in diesem Fall für mich egal) aber nur unter der Bedingung, dass die Datei nur kopiert/verschoben werden soll, wenn sie schon im Zielordner existiert (xcopy /U). Im Endeffekt sollen die PNG-Dateien dann in der selben Ordnerstruktur liegen.
Hier hab ich mal meinen Codeschnipsel der glaub ich mal in die richtige Richtung geht, aber noch nicht so wirklich funktioniert:
Ordnerstruktur (Beispiel):
- working
..- theme
- META-Inf
- res
- drawable
- drawable-hdpi
- drawable-nodpi
- layout
- xml
..- base
- META-Inf
- res
- drawable
- drawable-hdpi
- drawable-xdpi
- layout
- xml
Beispielsweiße sollen eine bzw. mehrere PNG-Dateien von "theme\res\drawable-hdpi" nach "base\res\drawable-hdpi", wenn diese dort existieren.
Ich hoff ich hab mich verständlich genug ausgedrückt xD
Ich schätze mal der Fehler liegt bei "*.png" und das dieser Teil durch eine weitere For-schleife ersetzt werden muss,
aber da hörts bei meinen Batchkenntnissen auf :o
Ich würde gerne aus einer Ordnerstruktur (inclusive den PNG-Dateien in Unterordner) alle Dateien mit der Endung .PNG (.png) in eine andere Ordnerstruktur kopieren/verschieben (ist in diesem Fall für mich egal) aber nur unter der Bedingung, dass die Datei nur kopiert/verschoben werden soll, wenn sie schon im Zielordner existiert (xcopy /U). Im Endeffekt sollen die PNG-Dateien dann in der selben Ordnerstruktur liegen.
Hier hab ich mal meinen Codeschnipsel der glaub ich mal in die richtige Richtung geht, aber noch nicht so wirklich funktioniert:
FOR /F %%a IN ('dir "theme" /a:d /b /s') DO (xcopy "theme\%%a\*.png" "base\%%a" /U /Y)
- working
..- theme
- META-Inf
- res
- drawable
- drawable-hdpi
- drawable-nodpi
- layout
- xml
..- base
- META-Inf
- res
- drawable
- drawable-hdpi
- drawable-xdpi
- layout
- xml
Beispielsweiße sollen eine bzw. mehrere PNG-Dateien von "theme\res\drawable-hdpi" nach "base\res\drawable-hdpi", wenn diese dort existieren.
Ich hoff ich hab mich verständlich genug ausgedrückt xD
Ich schätze mal der Fehler liegt bei "*.png" und das dieser Teil durch eine weitere For-schleife ersetzt werden muss,
aber da hörts bei meinen Batchkenntnissen auf :o
Please also mark the comments that contributed to the solution of the article
Content-Key: 197306
Url: https://administrator.de/contentid/197306
Printed on: April 25, 2024 at 22:04 o'clock
4 Comments
Latest comment
Hallo skriptkiddy und willkommen im Forum!
oder auch gleich ganz direkt:
Grüße
bastla
weshalb ich gerne ein allgemeines Kommando für sagen wir mal alle unterordner ab "theme\res" hätte.
Dazu brauchst Du doch eigentlich nur den Vorschlag von PH anzupassen:pushd "D:\theme\res" &&xcopy /LusYf *.png "D:\base\res\" &&popD
xcopy /LusYf "D:\theme\res\*.png" "D:\base\res\"
bastla