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

Rekursives kopieren und umbenennen von Dateien in neu anzulegenden Ordner

Frage Entwicklung Batch & Shell

Mitglied: net-agent

net-agent (Level 1) - Jetzt verbinden

30.01.2012 um 13:35 Uhr, 3639 Aufrufe, 3 Kommentare

Problem: Datensicherung eines Unix-Mailservers im mdir-Format unter Windows einlesen.

Hallo Leute, ich hoffe ihr könnt mir helfen.

Zur Situation: Ich habe hier eine Ordnerstruktur, die den Mailverkehr eines Unix-Mailservers beinhaltet. Die Daten wurden exportiert und sehen etwa wie folgt aus

Für jeden benutzer gibt es ein Accountverzeichnis. Innerhalb dieses Verzeichnisses sind nun mehrere Unterverzeichnisse vorhanden, ähnlich wie
man es auch aus Outlook kennt (Inbox, Archiv etc. Aber auch vom User selbs angelegte Strukturen).

In den Ordnern befinden sich nun die eigentliche E-Mails mit unterschiedlichen Dateinamen und ohne Dateierweiterung.
hängt man an eine solche Maildatei nun eine Erweiterung .eml an, so lässt sich die jeweilige Datei mit Outlook öffnen.
Haken an der Sache ist nun, dass die originale Datei nicht verändert werden darf/soll.


Bisher habe ich es so gemacht, dass ich in jeden Ordner gewechselt bin un dort über Batch folgende Befehle ausgeführt habe:

mkdir \umbenannt
xcopy * \umbenannt\*.eml

Da mir der Rechner zwischenzeitlich abgeschmiert ist, sind teilweise bereits "umbenannt"-Ordner angelegt, teilweise nicht.
Um nicht noch einmal alles erneut von Hand durchgehen zu müssen, suche ich nach einer Batch-Lösung, die folgendes erfüllt:

Aufgabe: Ordnerstrucktur rekursiv durchgehen.
Wenn kein Verzeichnis "umbenannt" besteht, dieses anlegen, die Dateien aus dem jeweiligen Verzeichnis dorthin kopieren und die
Erweiterung .eml anhängen.

Alternative: Gesamte Ordnerstrucktur mit ausnahme der Verzeichnisse "umbenannt" in ein neus Verzeichnis kopieren und dabei die Erweiterung
.eml an jede vorhandene Datei anhängen.

Wäre toll, wenn Ihr mir hierzu eine Lösung anbieten könntet.
Mitglied: bastla
30.01.2012 um 16:52 Uhr
Hallo net-agent und willkommen im Forum!

Das könnte (ungetestet) etwa so gehen:
01.
@echo off & setlocal 
02.
set "Ordner=D:\Mail-Ordner" 
03.
set "Neu=umbenannt" 
04.
 
05.
for /d /r "%Ordner%" %%i in (*) do ( 
06.
    if /i "%%~nxi" neq "%Neu%" if not exist "%%i\%Neu%" ( 
07.
        echo md "%%i\%Neu%" 
08.
        echo copy "%%i\*" "%%i\%Neu%\*.eml" 
09.
10.
11.
pause
Wegen der beiden echo in den Zeilen 7 und 8 zeigt der Batch vorerst nur an, was passieren wird, wenn diese echo entfernt werden ...

Grüße
bastla
Bitte warten ..
Mitglied: net-agent
31.01.2012 um 13:45 Uhr
Hallo bastla,

zunächst mal herzlichen Dank für die superschnelle Antwort.

Dein Script funktioniert super. Respekt!

Wenn man weiß wie es gehen sollte ist das Meiste auch nachvollziebar. Allerdings kann ich mit der Variable "%%~nxi" nichts anfangen.

Wäre nett, wenn du das nochmal kurz erläutern könntest.

Ich werde die Frage trotzdem schonmal als gelöst markieren.


Nochmals Danke und beste Grüße...

net-agent
Bitte warten ..
Mitglied: bastla
31.01.2012 um 15:25 Uhr
Hallo net-agent!
Allerdings kann ich mit der Variable "%%~nxi" nichts anfangen.
Ein intensiver Blick in die Online-Hilfe (for /?, ziemlich am Ende) sollte das eigentlich ändern ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Dateien kopieren, rekursiv in einen Ordner
gelöst Frage von golsinBatch & Shell9 Kommentare

Hallo und noch ein Frohes neues Jahr ;-) Ich bin mal wieder etwas ratlos Ich Versuche von einem Rechner ...

Batch & Shell
Mittels Batch Ordner umbenennen und Dateien kopieren
gelöst Frage von held.christophBatch & Shell12 Kommentare

Guten Tag allerseits Ich bin absoluter Leihe und konnte Dank mehr oder weniger grossen Suche in den Foren bereits ...

Batch & Shell
Alle Dateien in einem Ordner umbenennen
gelöst Frage von l.scheperBatch & Shell5 Kommentare

Hallo liebe Helferlein, lese schon seit geraumer Zeit mit und hab schon viele Tipps erfolgreich genutzt, vielen Dank dafür. ...

VB for Applications
Datei automatisch in neuen Ordner kopieren bei Erstellung
Frage von Privex007VB for Applications2 Kommentare

Hallo zusammen, ich habe einen Ordner in dem mehrere Unterordner erstellt werden. Ist es möglich bei Erstellung eines neuen ...

Neue Wissensbeiträge
Erkennung und -Abwehr

Sicherheitslücke Spectre und Meltdown: Status prüfen

Anleitung von Frank vor 1 StundeErkennung und -Abwehr

Nach all den Updates der letzten Woche sollte man unbedingt auch den Status prüfen, ob die Sicherheitslücke Spectre und ...

Microsoft Office

Office 2010 Starter erneut auf einer frischen Windows-Version installieren

Tipp von Lochkartenstanzer vor 1 TagMicrosoft Office9 Kommentare

Moin, vor ein paar Tagen schlug bei mir ein Kunde auf, der sein Widnows 7 geschrottet und es inklusive ...

Datenbanken

Upgrade MongoDB 3.4 auf 3.6

Erfahrungsbericht von Frank vor 1 TagDatenbanken

Seit kurzem gibt es das 3.6 Update für die MongoDB: Sicherheit, das Sortieren, Aggregation und auch die Performance wurde ...

SAN, NAS, DAS

Backdoor Zugang und Upload-Bug in vielen Western Digital MyCloud Geräten

Information von Frank vor 1 TagSAN, NAS, DAS2 Kommentare

James Bercegay von der Firma Gulftech hat die Fehler an Western Digital gemeldet und das Unternehmen stellt bereits ein ...

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

Drucker und Scanner
Gesucht DIN A3 Drucker
Frage von NebellichtDrucker und Scanner15 Kommentare

Hallo, ich möchte einen neuen DIN A3 Drucker kaufen. Um ab und zu, ca. 1 mal die Woche Farbausdrucke ...

iOS
Einladung vom iphone kalender
Frage von jensgebkeniOS15 Kommentare

Hallo Gemeinschaft, folgendes Problem - immer wenn ich von meinem Iphone einen Termin einztrage und diesem Termin Teilnehmer zuweise, ...

Windows Netzwerk
Drucker isolieren in Windows Domäne
gelöst Frage von lcer00Windows Netzwerk14 Kommentare

Hallo zusammen, habe eine Windows-AD (2012R2) in der es einen Druckerserver gibt. Mittlerweile verliere ich das Vertrauen in die ...