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

Verschiedene Unterordner anhand einer Liste umbenennen

Frage Entwicklung Batch & Shell

Mitglied: trashcan

trashcan (Level 1) - Jetzt verbinden

27.05.2012, aktualisiert 12:01 Uhr, 4111 Aufrufe, 8 Kommentare

Hallo,

Ich bin hier im Forum auf folgende Batch Datei gestoßen und würde diese nun gerne für meine Zwecke nutzen. Leider bin ich noch ein ziemlicher Frischling was das Schreiben von Batchdateien betrifft und hoffe daher, dass mir jemand beim Umbasteln helfen kann.

Folgendes habe ich schon angepasst:

01.
set "DATENBANK=c:\Database\DB01.db" 
02.
set "ORDNER=D:\ARCHIVE\" 
03.
cd /D %ORDNER% 
04.
 
05.
for /f "delims=" %%i in ('dir /b /ad') do for /f "tokens=1* delims==" %%a in ('findstr /b /c:"%%i" "%DATENBANK%"') do ren "%%i" "%%b" 
06.
pause
Das ganze funktioniert auch Einwandfrei, wenn die Ordner die ich umbenennen möchte direkt in %ORDNER% sind. Nun ist mein Unterverzeichnis aber Chronologisch aufgebaut:

%ORDNER%\YYYY\YYYY-MM\YYYY-MM-DD - Ordner_der_umbenannt_werden_soll

wobei YYYY für Jahr MM Für Monat und DD für Tag steht also z.B.:

C:\Archive\2005\2005-06\2005-06-03 - Backup Projekt XY

Die Textdatei ist wie Folgt aufgebaut:

YYYY-MM-DD - Ordner_der_umbenannt_werden_soll=Ordner_der_umbenannt_werden_soll

Mein Problem ist nun: Sobald ich eine Möglichkeit gefunden habe, auch die Unterordner zu erfassen, nennt mir die Batch ersteinmal die Zwischenordner YYYY und YYYY-MM um.

An die Möglichkeit einfach die Ordner um den Datums String zu kürzen habe ich auch schon gedacht, nur haben einige Ordner vereinzelnd noch einen Zusatz z.B.: 2005-06-03 - [Fertig] - Backup Projekt XY

Weiß jemand Rat?

Gruß

trashcan



Mitglied: Biber
27.05.2012, aktualisiert um 11:52 Uhr
[OT]
Moin trashcan,

Willkommen im Forum.
Bitte ignoriere meinen OT-Kommentar - erklär ich dir bei Bedarf per PN.
Zitat von trashcan:
Verschiedene Unterordner anhand einer Liste Umbennen
Das ganze funktioniert auch Einwandfrei, wenn die Ordner die ich umbennen möchte ...
...eine Möglichkeit gefunden habe, auch die Unterordner zu erfassen, bennent mir die Batch..
Set /a rgc+=3
#827

Grüße
Biber
P.S. Auf dein eigentliches Problem werfe ich auch einen Blick nach dem Frühstück.
[/OT]
Bitte warten ..
Mitglied: trashcan
27.05.2012 um 12:03 Uhr
Hallo Biber,

vielen Dank schon einmal im Voraus. Denke [OT] habe ich verstanden - "en" war schon immer eine Schwäche von mir
Bitte warten ..
Mitglied: mak-xxl
27.05.2012 um 13:20 Uhr
Moin trashcan,

falls der Biber zuviel gefrühstückt hat und jetzt einen dicken Kullerbauch pflegt, vorab eine Hilfestellung:

Die Verzeichnisse werden vom dir-Befehl angeliefert - wenn Du diesem den Parameter '/s' spendierst, macht er das auch für Unterverzeichnisse. Wenn Du vor den ren-Befehl noch ein echo setzt, kannst Du erstmal anschauen, was denn wäre, wenn ...

for /f "delims=" %%i in ('dir /b /s /ad') do for /f "tokens=1* delims==" %%a in ('findstr /b /c:"%%i" "%DATENBANK%"') do @echo ren "%%i" "%%b" 
Frohe Pfingsten und freundliche Grüße von der Insel - Mario
Bitte warten ..
Mitglied: trashcan
27.05.2012 um 13:53 Uhr
Hallo Mario,

Dank dir für den Tip. Leider macht er mir mit dem Zusatz von /s rein garnichts. Wenn ich die Batch ohne /s in meinem Hauptverzeichnis starte nennt er mir nur wieder die Jahres Ordner um - jeweils nach dem ersten Beitrag, der mit entsprechendem Jahres Tag in der Datenbank gefunden wird.

Ich bräuchte also einen Befehl, der YYYY\YYYY-MM überspringt, bzw. die Batch gleich in jedem YYYY-MM startet.

Gruß

trashcan
Bitte warten ..
Mitglied: bastla
27.05.2012, aktualisiert um 14:41 Uhr
Hallo trashcan!

Deiner Beschreibung nach würde sich ein "findstr /e" besser eigenen als die Variante mit "/b" (das "/s" beim "dir" brauchst Du aber trotzdem ...
Als Alternative könntest Du, anstatt alle Ordner durchzugehen, einfach alle "Datenbank"-Einträge abarbeiten (da so ganz gezielt nur die passenden Ordner in der jeweiligen Ebene gefunden werden) - ungetestet etwa:
for /f "usebackq tokens=1* delims==" %%i in ("%DATENBANK%") do for /f "delims=" %%o in ('dir /s/b/ad "%ORDNER%\%%i"') do echo ren "%%o" "%%j"
... und übrigens: Die Zeile 3 ist entbehrlich, wenn Du (in der einen oder anderen Version) "dir /s/b" verwendest, da Du so ohnehin einen kompletten Pfad erhältst ...

Grüße
bastla
Bitte warten ..
Mitglied: Biber
27.05.2012, aktualisiert um 16:05 Uhr
[OTii]
Moin mak-xxl,

Zitat von mak-xxl:
falls der Biber zuviel gefrühstückt hat und jetzt einen dicken Kullerbauch pflegt...
Hrrmmhhhh.... irgendwie wurde mein alter Avatar ein büschen unvorteilhaft auf ein quadratisches Format gestaucht...
-> nur deshalb bin ich da VOLLKOMMEN VERZERRT so stark in die Breite gegangen *grmphhh*

Ich habe jetzt mal ein eher an Porträtaufnahmen angelehntes Bildchen hochgeladen.
Allerdings - verglichen mit der Mona Lisa wirke ich doch noch etwas knuffig.

Bezogen auf das TO-Problem: sollte schon hinreichend beantwortet sein.

Ebenfalls Vrohe Vinxten auf die Insel Mario
Biber
[/OTii]
Bitte warten ..
Mitglied: trashcan
27.05.2012 um 16:22 Uhr
Vielen Dank bastla,

So hat es geklappt

Viele Grüße und euch allen noch schöne Pfingsten.

trashcan
Bitte warten ..
Mitglied: bastla
27.05.2012 um 19:45 Uhr
[OT] Hallo Biber!

Da hab ich es mit meinem Bildchen wesentlich leichter (die Tendenz zur "Breite unterhalb der Gürtellinie" hattest Du ja seinerzeit schon konstatiert ) ...

Grüße
bastla
[/OT]
Bitte warten ..
Ähnliche Inhalte
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 ...

Batch & Shell
Dateien gleich Ordnernamen umbenennen (auch in allen Unterordnern)
gelöst Frage von OOmatrixOOBatch & Shell14 Kommentare

Hallo. Ich möchte in einem speziellen Ordner in ALLEN Unterordnern ALLE Dateien nach ihren Ordnernamen umbenennen. Ich habe mir ...

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 ...

C und C++
C-sharp List verschiedene Bedingungen
Frage von YanmaiC und C++5 Kommentare

Hallo liebe Administratoren, ich habe eine Liste vom Typ eines Objektes. Diese Liste wird (de)serialisiert, um die Daten zu ...

Neue Wissensbeiträge
Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 10 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 17 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 19 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 22 StundenMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1018 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...