Umbenennen von Verzeichnissen / Unterverzeichnissen

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
Pluto71
Junior Member
Junior Member
Posts: 4
Joined: 2006-01-24, 15:22 UTC

Umbenennen von Verzeichnissen / Unterverzeichnissen

Post by *Pluto71 »

Hallo

Leider habe ich nichts im Forum gefunden das mir weiterhelft.

Ich habe folgende Aufgabe:
Auf einem Laufwerk sind ganz viele Verzeichnisse mit Unterverzeichnissen. Es dürfen aber keine 2 Verzeichnisse den gleichen Namen haben.
Gibt es eine Möglichkeit Doppelte Verzeichnisse zu finden oder alle Verzeichnisse umzubenennen mit einem Zähler angehängt.

Folgendes habe ich schon versucht. Suche nach *. -> Anwenden. Dann habe ich die Liste aller Verzeichnisse und Unterverzeichnisse. Alle Markieren und mit dem Mehrfach Umbenenn Toll einen Zähler anhängen.
Geht aber nicht.....

Besten Dank für Tipps.

MfG
Stephan
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

Bei mir gehts aber.
Übrigens: verzeichnisse suchen kannst du mit inhaltsplugin: tc - file type = folder.
I switched to Linux, bye and thanks for all the fish!
Hasli
Junior Member
Junior Member
Posts: 25
Joined: 2005-04-06, 12:55 UTC
Location: Aargau

Post by *Hasli »

Bei mir geht es nur EINE Verzeichnissebe tief (W2k pro, TC6.53). Also Unter-unter-verzeichnisse werden nicht umbennant. Scheint mir auch (halb-)logisch zu sein, das "Ober"verzeichnis wurde ja umbenannt, also ist der Pfad zum Unterverzeichniss ein anderer geworden.
@SanskritFritz: geht es wirklich auch mit 3-Verzeichnissebenen?
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

@SanskritFritz: geht es wirklich auch mit 3-Verzeichnissebenen?
Opps, stimmt, so hab ich nicht probiert :oops:
I switched to Linux, bye and thanks for all the fish!
Pluto71
Junior Member
Junior Member
Posts: 4
Joined: 2006-01-24, 15:22 UTC

Post by *Pluto71 »

Genau das ist ja mein Problem. Ich habe mehere Verzeichnissebenen.
User avatar
Sheepdog
Power Member
Power Member
Posts: 5150
Joined: 2003-12-18, 21:44 UTC
Location: Berlin, Germany
Contact:

Post by *Sheepdog »

Ich überleg mir mal 'nen Batch-Ansatz dafür.

sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
User avatar
Sheepdog
Power Member
Power Member
Posts: 5150
Joined: 2003-12-18, 21:44 UTC
Location: Berlin, Germany
Contact:

Post by *Sheepdog »

Jetzt habe ich eine kleine Batchdatei geschrieben:
Diese Datei ist unter dem Namen c:\folder.bat abzuspeichern. Dies ist wichtig, da sie sich selbst wieder aufruft.

Dann sollte die Umgebungsvariable %p% auf 0 gesetzt werden, denn dies ist der Zähler, der an die Ordnernamen rangehängt wird. Das macht man mit dem Befehl:

Code: Select all

set /a p=0
Dies kann man auch in einer zweiten Batchdatei erledigen, die dann in der zweiten Zeile c:\folder.bat aufruft.
Hier nun c:\folder.bat:

Code: Select all

set /a p=p+1
for  /D  %%a in (*) do (cd "%%~fa"
call c:\folder.bat
cd ..
echo ren "%%~fa" "%%a(%p%)" >> c:\umbenenn.txt
)
Die Batch funktioniert folgendermaßen:
set /a p=p+1 addiert jeweils 1 zum Zähler hinzu
for /D %%a in (*) führt die folgenden Befehle fü jedes Unterverzeichnis durch
do (cd "%%~fa" wechselt in das Verzeichnis
call c:\folder.bat ruft die Bacth nochmal auf, damit rekursiv in jedes Verzeichnis gewechselt wird, bis kein Unterverzeichnis mehr gefunden wird
cd .. Nun wird eine Ebene höher gewechselt, da man ein Verzeichnis nicht umbenennen kann, in dem man sich gerade befindet.
echo ren "%%~fa" "%%a(%p%)" >> c:\umebnenn.txt
Schreibt den Befehl ren "Verzeichnisname" "Verzeichnisname(p)" in eine Textdatei mit Namen c:\Umbenenn.txt.

Jetzt erhält man in C:\Umbenenn.txt eigentlich eine Batchdatei, die alle Verzeichnisse umbenennt, so dass keines den gleichen Namen haben kann, da in jedem Verzeichnis der Zähler geändert wird und in einem Verzeichnis nicht mehrere Verzeichnisse den selben Namen tragen können.

Nun kann man sich noch mal ansehen, ob alles richtig gelaufen ist (wurde die Batch vom richtigen Verzeichnis gestartet? usw). Wenn alles stimmt, dann muss man einfach nur die Endung von TXT nach BAT verändern und kann die Batch per Doppelklick starten.

Zu Beachten ist noch, dass diese Textdatei recht groß werden kann, und dass es - je nach Plattengröße - einige Minuten dauern kann, bis die Datei erstellt und auch bis die Dateien dann umbenannt sind.

38691 Verzeichnisse haben bei mir eine Datei von 1.363.968 Bytes erzeugt.


Am besten macht man vorher erst ein paar Tests, um zu sehen ob's wie gewümscht funktioniert.

Hoffe das hilft

sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
Pluto71
Junior Member
Junior Member
Posts: 4
Joined: 2006-01-24, 15:22 UTC

Post by *Pluto71 »

Vielen Dank !!!!!

Funktioniert so. Jedenfalls ist das für mich die Lösung.

MfG
Stephan
User avatar
Sheepdog
Power Member
Power Member
Posts: 5150
Joined: 2003-12-18, 21:44 UTC
Location: Berlin, Germany
Contact:

Post by *Sheepdog »

Pluto71 wrote:Vielen Dank !!!!!

Funktioniert so. Jedenfalls ist das für mich die Lösung.

MfG
Stephan
Fein.

sheepdog
"A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete fools."
Douglas Adams
Post Reply