Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Unterordner mit bestimmten Namen umbenennen per batch,...

Mitglied: CADSusi

CADSusi (Level 1) - Jetzt verbinden

08.04.2011 um 08:48 Uhr, 5123 Aufrufe, 15 Kommentare

bin leider noch nicht ganz firm in Punkto Programmierung ;(

Hallöchen,

ich habe folgendes Problemchen:

Innerhalb eines Ordners sollen die Unterordner, die bspw. "A" heißen in "X", "C" in "Y" und "D" in "Z" umbenannt werden (Unterordner können auch in der x-ten Ebene vorhanden sein).

Jetzt hatte ich mir vorgestellt, bspw. eine rename.bat oder ein vbs Progrämmchen in unserem Projekteordner abzulegen, welche alle Unterordner nach dem vorher anzugebenden Namen durchsucht, also bspw. "A" und dann, wenn vorhanden umbenennt in einen ebenfalls vorher anzugebenden Namen bspw. "X". Ich hoffe das es so in etwa machbar ist. Bisher hab ich nur Beiträge gefunden, die Dateien oder Dateiendungen umbenennen oder nur den Ordner in der ersten Ebene.

Kann mir da vielleicht jemand weiterhelfen? Betrifft rund 300 Ordner und darin in Ebene x ca. 14 Ordner mit Namen A, B, C, usw.

Vielen Dank im Voraus
LG Susi
Mitglied: Biber
08.04.2011 um 09:47 Uhr
Moin CADSusi,

willkommen im Forum.
Vielen Dank für deine durchaus brauchbare Beschreibung der Anforderung.
Die ist auch nicht so schwierig umzusetzen eigentlich, allerdings..

Allerdings muss beachtet werdet wueden, dass das übliche Vorgehen mit FOR/D bzw FOR/R im Batch (was ich als Werkzeug für diesen pilpul empfehlen würde) wahrscheinlich unelegant abgrätscht, wenn ein einer rekursiv abzuarbeitenden Verzeichnisstruktur die Parentordner plötzlich umbenannt sind.

Deshalb vorab noch die Klärung: Ist das jetzt einen einmalige Aktion, eine Sonderlocke, die jetzt nur von "A*" auf "X*", von "B*" auf "Y*" ändern soll oder ist das voraussichtlich ein wiederkehrend benötigter Ablauf, der flexibel gestaltet werden sollte?

Grüße
Biber
Bitte warten ..
Mitglied: Skyemugen
08.04.2011 um 10:07 Uhr
Aloha Susi,

zusätzlich zu Bibers Frage & Anmerkung würde es, so denke ich, auch wichtig sein, zu erfahren, ob der gesuchte Name auch als Teilname in einem anderen Ordner vorkommen kann (z.B. X existiert separat aber es gibt auch XB) oder sogar exakt mit diesem Namen in einem anderen Verzeichnis (wovon ich nicht ausgehe)?

greetz André
Bitte warten ..
Mitglied: bastla
08.04.2011 um 10:46 Uhr
@Biber
wenn in einer rekursiv abzuarbeitenden Verzeichnisstruktur die Parentordner plötzlich umbenannt sind.
So aus dem Handgelenk (komme gerade leider nicht dazu): Ein "dir /s /b /ad|sort /r" sollte doch das Ganze vom Ende her aufdröseln (oder doch gleich VBS, wo sich die Rekursion besser steuern lässt) ...

Grüße
bastla
Bitte warten ..
Mitglied: CADSusi
08.04.2011 um 11:51 Uhr
hallöchen,

vielen Dank!

Absolut einmalig die Aktion.

Hintergrund ist, daß diese Ordner als Arbeitsbereich für die einzelnen Bearbeiter dient. Nun haben wir den Fehler gemacht, diese nur mit dem Vornamen des Bearbeiters zu versehen. Seit kurzem haben wir aber bspw. 2 x Arnold... Um nicht mit Zahlen arbeiten zu müssen, wo letztlich nur ein Teil der Mitarbeiter sich merken kann welche Zahl zu wem gehört, würd ich es einfach am Loginnamen orientieren wollen. Ist zwar auch nicht 100% sicher vor Dopplungen bei Meier, Schulze und Schmidt, aber schon besser.

LG Susi

edit: Innerhalb des Parentordners sollten denk ich keine Ordner mit dem Namen vorkommen. Aber gänzlich ausschließen kann ich´s leider nicht. Ich kann aber garantieren, daß es sich um die 3. Unterebene handelt.

Stammordner (in dem die .bat liegt) - Jahr - Projektnummer - "A" ; "B" ; "C" usw.
Bitte warten ..
Mitglied: CADSusi
08.04.2011 um 11:57 Uhr
hallihallo,

nein keine Teile oder Teilnamen. Betreffender Ordner heißt "A" und ist umzubennen in "X". In Betracht kommen allerdings nur Unterordner des Verzeichnisses (Ordners), in dem auch die name.bat oder VBS liegt.

LG Susi
Bitte warten ..
Mitglied: 60730
08.04.2011 um 13:30 Uhr
salü,

ist das Ziel wirklich die Ordner umzubenennen?

Oder eher doch - wenn der "neue"Ordner bereits existiert den Inhalt in den vorhandenen Ordner zu schieben und den "alten" Ornder zu löschen?

Das ist ein kleiner aber feiner unterschied. - wie der untere Abschnitt zeigt...

N:\testing>md 12 
 
N:\testing>md 123 
 
N:\testing>tree 
Auflistung der Ordnerpfade für Volume X 
Volumenummer: 0815 
N:. 
├───12 
└───123 
 
N:\testing>
N:\testing>echo 12>12\12.ini 
N:\testing>echo 123>123\123.ini 
N:\testing>move 12 123 
 
N:\testing>tree 
Auflistung der Ordnerpfade für Volume X 
Volumenummer: 0815 
N:. 
└───123 
    └───12 
 
N:\testing>
Gruß
Bitte warten ..
Mitglied: CADSusi
08.04.2011 um 13:41 Uhr
hi,

Ziel ist wirklich nur umbenennen von Unterordnern innerhalb eines Ordners.

Projekte 
     |---Jahr1 
     |       |---Projektnr.1 
     |       |           |---"A"  umbenennen in  "X" 
     |       |           |---"B"  umbenennen in  "Y" 
     |       |           |---................ 
     |       |---Projektnr.2 
     |       |           |---"A"  umbenennen in  "X" 
     |       |           |---"B"  umbenennen in  "Y" 
     |       |           |---................ 
     |       |---................ 
     |---Jahr2 
     |       |---Projektnr.1 
     |       |           |---"A"  umbenennen in  "X" 
     |       |           |---"B"  umbenennen in  "Y" 
     |       |           |---................ 
     |       |---Projektnr.2 
     |       |           |---"A"  umbenennen in  "X" 
     |       |           |---"B"  umbenennen in  "Y" 
     |       |           |---................ 
     |       |---................ 
Hoffe so ist´s verständlicher...

LG Susi
Bitte warten ..
Mitglied: Biber
08.04.2011 um 13:49 Uhr
Moin CADSusi,

ich bin auch immer noch nicht sicher, ob ich die Verzeichnisstruktur jetzt richtig interpretiere.
[Edit] Das habe ich geschrieben, bevor ich CADSusis Kommentar über mir gelesen hatte. Hat sich überschnitten.[Edit]

in meiner Vorstellung sieht das so aus (mein "Rootverzeichnis" ist D:\temp, darunter ein Ordner 2010 mit dieser Unterstruktur)
(=13:34:46  D:\temp=) 
>dir /s /b /ad 2010 
D:\temp\2010\A 
D:\temp\2010\B 
D:\temp\2010\A\whatever 
D:\temp\2010\A\whatever\A 
D:\temp\2010\A\whatever\B 
D:\temp\2010\B\andere 
D:\temp\2010\B\other 
D:\temp\2010\B\andere\B 
D:\temp\2010\B\other\A 
D:\temp\2010\B\other\B 
D:\temp\2010\B\other\C 
 
--oder, wie bastla sortieren würde: 
 
>dir /s /b /ad 2010|sort /r" 
D:\temp\2010\B\other\C 
D:\temp\2010\B\other\B 
D:\temp\2010\B\other\A 
D:\temp\2010\B\other 
D:\temp\2010\B\andere\B 
D:\temp\2010\B\andere 
D:\temp\2010\B 
D:\temp\2010\A\whatever\B 
D:\temp\2010\A\whatever\A 
D:\temp\2010\A\whatever 
D:\temp\2010\A
Ich sehe nach deiner Beschreibung nur 2 Fälle:
-Entweder ein umzubenennendes "A","B" oder "C" in einer Zwischenebene unterhalb 2010, aber mit Unterverzeichnissen
- oder am Ende einer Verzeichnisstruktur (ohne Unterordner)

Die beiden Fälle würde ich auch separat abhandeln.
Am Ende eines Pfades:
>for /F %i in ('dir /ad /b /s 2010\A' ) do @if "%~ni"=="A" @echo ren "%i" X 
ren "D:\temp\2010\A\whatever\A" X 
 
(=13:42:50  D:\temp=) 
>for /F %i in ('dir /ad /b /s 2010\B' ) do @if "%~ni"=="B" @echo ren "%i" Y 
ren "D:\temp\2010\B\andere\B" Y 
ren "D:\temp\2010\B\other\B" Y 
 
(=13:43:05  D:\temp=) 
>for /F %i in ('dir /ad /b /s 2010\C' ) do @if "%~ni"=="C" @echo ren "%i" Z 
ren "D:\temp\2010\B\other\C" Z
Bei einer einmaligen Aktion würde ich das auch über CMD-Prompt abfackel, bevor ich da noch weitere kunstvolle FOR-Anweisungen drumwickele.

Sind erst die End-Verzeichnisse umbenannt, dann kommen die Zwischenebenen dran.
>for /r /d %i in (2010\* ) do @if /i "%~ni"=="A" @echo ren "%i" X 
ren "D:\temp\2010\A" X 
 
(=13:45:15  D:\temp=) 
>for /r /d %i in (2010\* ) do @if /i "%~ni"=="B" @echo ren "%i" Y 
ren "D:\temp\2010\B" Y 
...
...also eigentlich ganz schmerzfrei.

Batches oder Skripte schreibe ich eigentlich nur, wenn ich sie auch mehrfach verwenden kann.
Für einfache "kannste-ma'-eben"-Anforderungen sollte der CMD-Prompt ausreichen.

Grüße
Biber
Bitte warten ..
Mitglied: bastla
08.04.2011 um 14:21 Uhr
Hallo @All!

Dachte mir schon, dass da nicht mehr viel zu tun bleibt ...

... aber, um den Gedanken von oben zu Ende zu bringen:
>for /f "delims=" %i in ('dir /s /b /ad D:\temp\A^|sort /r') do @echo ren "%i" X
Durch die absteigende Sortierung werden die längeren Pfade zuerst behandelt, womit das "Sich-selbst-den-Boden-unter-den-Füßen-Wegziehen" vermieden werden sollte.

Grüße
bastla
Bitte warten ..
Mitglied: Biber
08.04.2011 um 18:05 Uhr
@bastla
Zitat von bastla:
... aber, um den Gedanken von oben zu Ende zu bringen:
>for /f "delims=" %i in ('dir /s /b /ad D:\temp\A^|sort /r') do @echo ren "%i" X 
> 
Durch die absteigende Sortierung werden die längeren Pfade zuerst behandelt, womit das
"Sich-selbst-den-Boden-unter-den-Füßen-Wegziehen" vermieden werden sollte.
Hast du meinen POC zu dem Thema "SORT" im meinem Kommentar gesehen?

Grüße
Biber
Bitte warten ..
Mitglied: bastla
08.04.2011 um 20:38 Uhr
@Biber
Hast du meinen POC zu dem Thema "SORT" im meinem Kommentar gesehen?
Das ja - wollte nur hinsichtlich der Umsetzung komplettieren ...

Schönes Wochenende
bastla
Bitte warten ..
Mitglied: Biber
10.04.2011 um 20:02 Uhr
Sache ma', Susi,

müssen wir dein "Vielen Dank im Voraus" wörtlich nehmen oder kommt noch ein Feedbäckle? Oder grünes Häkle?

Grüße
Biber
Bitte warten ..
Mitglied: CADSusi
11.04.2011 um 13:43 Uhr
Hi und sorry für die späte Rückmeldung,

mußte hier noch was anderes zwischenschieben und hatte am WE recht viel privaten Kram zu erledigen. Meld mich gleich nachdem ich mit probieren durch bin (hoffentlich auch gleich mit grünem Häckle).

LG Susi
Bitte warten ..
Mitglied: Biber
11.04.2011 um 13:50 Uhr
Moin CADSusi,

den Satz mit dem privaten Kram und dem Was-dazwischenschieben-müssen, den lass mal ich unkommentiert.
Frühling ist's...
Aber setz ggf. ein grünes Häkchen oder Häkle, aber kein Häckle oder Häckchen bitte.

Bis dahin
Biber
Bitte warten ..
Mitglied: CADSusi
11.04.2011 um 15:28 Uhr
Danke an Alle Helfer

It´s done
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Dateien mit bestimmten Namen in allen Unterordnern umbenennen

Frage von koehneBatch & Shell2 Kommentare

Hi, ich bräuchte mal fix eure Hilfe, weil ich nicht weiterkomme. Ich habe in einem Ordner mehrere Unterordner. In ...

Batch & Shell

Bestimmte Ordner per Batch umbenennen

gelöst Frage von 122763Batch & Shell3 Kommentare

Liebe Forenmitglieder, soviel vorweg gesagt - mir ist durchaus bewusst, dass es viele ähnliche Beiträge gibt, die mir leider ...

Batch & Shell

Batch: alle Ordner mit einem bestimmten Namen kopieren

gelöst Frage von RemsboysBatch & Shell4 Kommentare

Hallo zusammen, ich würde gerne eine Batch-Datei erstellen, mit der ich aus einem Ordner alle Unterverzeichnisse die den Namen ...

Batch & Shell

Umbenennen von Dateien mit Ordnernamen und Unterordner

gelöst Frage von Xaero1982Batch & Shell10 Kommentare

Moin Zusammen, folgendes Problem: Ich habe einen Ordner. Nennen wir ihn "Fotos" In diesem Ordner sind dann Zig Unterordner ...

Neue Wissensbeiträge
Microsoft
ARD-Doku - Das Microsoft Dilemma
Tipp von Knorkator vor 1 StundeMicrosoft2 Kommentare

Hallo zusammen, vor einigen Tagen lief in der ARD u.a. Reportage. Das Youtube Video dazu dürfte länger verfügbar sein. ...

Windows 10

Neue Sicherheitslücke in Windows 10 (Version 1709) durch Google öffentlich geworden

Information von kgborn vor 19 StundenWindows 10

Vor ein paar Tagen haben Googles Sicherheitsforscher vom Projekt Zero eine Sicherheitslücke im Edge-Browser publiziert. Jetzt wurde eine weitere ...

iOS
IOS 11.2.6 verfügbar
Information von sabines vor 1 TagiOS

Mit dem Update soll der Bug behoben werden, bei dem eine bestimmte Zeichenkette IOS zum Absturz gebracht hat.

Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 1 TagSicherheit8 Kommentare

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Heiß diskutierte Inhalte
Router & Routing
LANCOM VPN CLIENT einrichten
Frage von Finchen961988Router & Routing27 Kommentare

Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen, wir haben einen Kunden der hat einen Speedport ...

Windows Server
AD DS findet Domäne nicht, behebbar?
Frage von schapitzWindows Server25 Kommentare

Guten Tag, ich habe bei einem Kunden ein Problem mit den AD DS. Umgebung ist folgende: Windows Server 2016 ...

LAN, WAN, Wireless
VPN Cisco ASA5505 PaloAlto PA-200
gelöst Frage von YannoschLAN, WAN, Wireless25 Kommentare

Hallo zusammen, ich würde gerne ein Site-to-Site VPN zwischen den beiden Standorten aufbauen. PaloAlto PA200 Internetanschluss Deutsche Telekom GK ...

SAN, NAS, DAS
Qnap TS-453S Pro - Anbindung Active Directory
Frage von JuckieSAN, NAS, DAS13 Kommentare

Hallo zusammen, ich habe hier eine Qnap TS-453S Pro die sich mal so absolut gar nicht in das Active ...