PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ordner löschen - Inhalt nicht?


MasterElwood
2010-09-30, 09:44:59
Gibts eine Möglichkeit/ein Programm einen Ordner zu löschen aber den Inhalt nicht?

Beispiel: Ich habe einen Ordner A und darin einen Ordner B mit Dateien drin. Jetzt würde ich gerne einfach B löschen - aber die Dateien von B sollen rauf rutschen nach A.

Natürlich kann ich das per Hand machen, aber ich hab einen Ordner mit mehreren hunderten Unterordnern die alle weg sollen - und nur der Inhalt soll rauf in den Hauptordner. Und per Hand dauert das ewig.....

Thanx in A.

hadez16
2010-09-30, 10:11:20
Methode 1

sofern Ordner A selbst keine dateien hat:

Windows Suche in Ordner A *.*

alle dateien ausschneiden, in Ordner A einfügen.
Danach einfach alle Unterordner löschen.

no?

Methode 2

Alle Unterordner samt deren Dateien zippen (ich habe 7Zip benutzt).
Dann beim Entpacken des Archivs angeben "keine Verzeichnisstruktur übernehmen"
Dann bretzelt er einfach alle Dateien innerhalb der Unterordner in dein angegebenes Ziel.

Kleiner Umweg aber selten :D

Methode 3

irgendein krankes batch-skript welches sich an der FOR-funktion aufgeilt welche ich wohl nie verstehen werde

MasterElwood
2010-09-30, 10:33:12
Ich wollt die Frage einfach halten aber ich muss wohl ein bisschen genauer werden:

Ich hab einen Haufen Ordner "A" - alle richtig beschriftet (Ac475,A3874,Avcj...).

Und jeder dieser Ordner hat einen Ordner "B" - aber alle "B" heißen gleich "B". Erst darin sind die jeweiligen Dateien.

Ich brauch also die passenden Dateien immer im darüber liegenden Ordner Axxx - nur B dazwischen muss weg.

Deswegen funktioniert die Windows Such - kopier Version nicht (weil die B´s alle gleich heissen...)

Nevermore4ever
2010-09-30, 12:00:17
Du könntest es mal mit einer BATCH-Datei probieren. Hier ist eine Wiki-Seite (http://de.wikibooks.org/wiki/Batch-Programmierung:_Batch-Befehle). Die Parameter für DOS-Befehle erfährt man über "Befehl /?".

Das sollte ungefähr so aussehen, für den Fall, dass die Verzeichnisse alle keinen Punkt enthalten:

@echo off
for /D "tokens=*" %%f in ('dir /b C:\*.') do (
move %%f\B\*.* %%f
rd %%f\B
)

Probiere das aber erst einmal an einer kleinen Auswahl von Kopien aus! Ich habe den Code nicht getestet. Daher keine Gewähr.

hadez16
2010-09-30, 12:34:06
ich dachte mir das irgendwie so


for /D %f in (C:\A*) DO (for /R %f %g IN (*.*) DO (
move %g %f
....
)



aber 1. will es nicht 2. das löschen des ordners hakelt noch

wie ich diese for-funktion hasse

hadez16
2010-09-30, 12:49:56
ah ich habs!!

angenommen deine Ordner, die alle mit A beginnen, liegen in C:\test

dann hast du eine batch in c:\test

die macht folgendes:


dir /AD /B > liste.txt


Das schreibt dir eine Liste aller Ordner in C:\Test in die liste.txt (vorausgesetzt das sind alles deine Ordner die du willst also Ordner A)

dann


for /F "tokens=*" %%i in (c:\test\liste.txt) do (
move C:\test\%%i\B\*.* C:\test\%%i
rd c:\test\%%i\B
)


wobei man sieht, dass der Unterordner hier wirklich B heißt. Müsste man dann adaptieren.

Habs gerade probiert und es geht.
*extremstolzgrad*

EDIT: ja das mit der liste.txt kann man sich auch sparen aber jetzt keine lust mehr ^^

HeldImZelt
2010-09-30, 16:37:18
TotalCommander 'Befehle/Zweigansicht (mit Unterverzeichnissen)'
Das verschiebst du dann in einen anderen Ordner.

Komplexe, relative Absenkungen auf n>2-Ebenen gehen damit natürlich nicht, weil alle tieferen Ebenen auf eine zusammengefasst werden.

MasterElwood
2010-10-01, 02:28:39
Das mit TotalComander hab ich probiert, aber der lässt mich nur alle Dateien in EIN Unterverzeichniss kopieren. Ich brauch jedoch die Dateien von einem "B" Ordner immer in den darüberliegenden "Axxx" Ordner kopiert, da die A Ordner bereits die richtige Beschriftung für die Dateien haben.

Aber das Batch.... WAHNSINN!!!

Tausend Dank an Nevermore4ever und vor allen hadez16!!!

Ihr glaubt gar nicht was ihr mir für Zeit gespart habt bei ca. 6 0 0 Ordnern!!!!!