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
Kommentar vom Moderator Biber am 30.01.2013 um 22:32:43 Uhr
Verschoben von "Tools & Utilties" nach "Batch & Shell". Und auf "Erledigt" gesetzt.

gelöst Windows Batch Gleichzeitiges Kopieren und Umbenennen von Dateien in for Schleife

Mitglied: sr2013

sr2013 (Level 1) - Jetzt verbinden

29.01.2013, aktualisiert 30.01.2013, 2882 Aufrufe, 3 Kommentare

Hallo,

nachdem ich erfolglos gegoogelt und nicht wirklich etwas gefunden habe, hier meine Frage:

Meine Verzeichnisstruktur sieht beispielhaft folgendermaßen aus:
01.
C:\daten\20120101\log.log 
02.
C:\daten\20120102\log.log 
03.
C:\daten\20120103\log.log 
04.
C:\daten\20120104\log.log 
05.
usw.
Die Datenen log.log möchte ich in ein Verzeichnis
C:\daten_neu kopieren und dabei umbenennen, so dass
C:\daten\20120101\log.log -> C:\daten_neu\20120101log.log 
C:\daten\20120102\log.log -> C:\daten_neu\20120102log.log 
C:\daten\20120103\log.log -> C:\daten_neu\20120103log.log 
C:\daten\20120104\log.log -> C:\daten_neu\20120104log.log
Um sie dann aus dem zentralen Verzeichnis weiterverarbeiten zu können.

Nun meine Frage: wie mache ich das?

Das einfache Kopieren ginge mit
01.
for /r C:\daten %%f in (log.log) do copy "%%f" C:\daten_neu
Dabei wird aber die Ziel-Datei jeweils überschrieben und es bleibt nur die letzte stehen.
Es müsste doch möglich sein, den Teil 20120103 aus %%f herauszufiltern und dynamisch in den Ziel-Dateinamen zu integrieren. Das ist mir aber nicht gelungen.
Vielleicht gibt es ja hier jemanden, der das aus dem ff kann, ich - Neuling in der Batch-Programmierung - bin für jeden Hinweis dankbar.

Viele Grüße

Mitglied: bastla
29.01.2013, aktualisiert um 22:20 Uhr
Hallo sr2013 und willkommen im Forum!

Wenn die Quellordner offensichtlich alle direkt in "C:\daten" liegen und "2012*" heißen, etwa so:
for /d %%i in (C:\daten\2012*) do echo copy "%%i\log.log" "C:\daten_neu\%%~nilog.log"
Wegen des "echo" werden (zum Testen) die Kopierbefehle nur angezeigt, aber nicht ausgeführt ...
Sollte allerdings Dein "for /r" ernst gemeint sein (weil es auch in Unterordnern von zB "C:\daten\20120101" noch "log.log"-Dateien gibt), besser:
01.
@echo off & setlocal 
02.
set "Basis=C:\daten" 
03.
set "Datei=log.log" 
04.
set "Ziel=C:\daten_neu" 
05.
 
06.
for /f "delims=" %%i in ('dir /s/b/a-d "%Basis%\%Datei%"') do call :ProcessFile "%%i" 
07.
goto :eof 
08.
 
09.
:ProcessFile 
10.
set "Pfad=%~f1" 
11.
call set "RelPfad=%%Pfad:%Basis%=%%" 
12.
echo copy %1 "%Ziel%\%RelPfad:\=%" 
13.
goto :eof
- auch hier wieder mit "Test-echo" (in Zeile 12) ...

Grüße
bastla
Bitte warten ..
Mitglied: sr2013
30.01.2013, aktualisiert um 20:14 Uhr
Hallo bastla,

herzlichen Dank für die schnelle Antwort! Hab es eben am heimischen Rechner nachgestellt, da hat es auf Anhieb das gemacht, was es sollte. Auf Arbeit gab es noch einen Fehler, aber dann lag der Fehler wohl beim Anwender

Danke auch für das aufmerksame Lesen!! Du hattest recht, das /r war nicht ohne Grund gesetzt, weil es noch Unterverzeichnisse gibt. Da habe ich die Aufgabenstellung zu knapp beschrieben. Also habe ich deine Lösung 2 gewählt.

So nun hoffe ich, dass ich bei meiner neuen Tätigkeit schnell dazu lerne und mich hier mal für die Hilfe revanchieren kann
Ich find es immer wieder toll, wieviel Hilfe man im Netz so findet, von wegen Internet macht einsam...

Viele Grüße
Bitte warten ..
Mitglied: bastla
30.01.2013 um 20:50 Uhr
Hallo sr2013!

Freut mich, wenn's hilft - und Deine Einstellung, hier auch selbst etwas beitragen zu wollen, freut mich noch mehr.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch-Skript Schleife älteste Datei umbenennen

Frage von pentaddBatch & Shell9 Kommentare

Hallo zusammen, Ich möchte per Batch-Skript folgendes umsetzen: älteste Datei in einem Ordner finden Datei umbenennen: vom Dateinamen die ...

Batch & Shell

BATCH tempfile in for Schleife umbenennen

gelöst Frage von LuceDeCielloBatch & Shell4 Kommentare

Hallo, ich stehe gerade mal wieder etwas auf dem Schlauch. Folgende Problemstellung: Es werden mehrere csv-files nacheinander eingelesen und ...

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

Spezifische Datei aus Unterordner per batch kopieren und umbenennen (windows XP)

Frage von GeneralChewieBatch & Shell3 Kommentare

Hallo, Nach langer (erfolgloser) Suche im Forum stelle ich nun selbst die Frage. Das Problem: Ich möchte per Batch ...

Neue Wissensbeiträge
Windows 10

Windows 10 on ARM: von Microsoft entfernte Info - Klartext, was nicht geht

Information von kgborn vor 1 StundeWindows 10

Windows 10 on ARM ist ja eine neue Variante, die Microsoft im Verbund mit Geräteherstellern am Markt etablieren will. ...

Microsoft
TV-Tipp: Das Microsoft-Dilemma
Information von kgborn vor 2 StundenMicrosoft2 Kommentare

Aktuell gibt es in Behörden und in Firmen eine fatale Abhängigkeit von Microsoft und dessen Produkten. Planlos agieren die ...

Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 2 TagenWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 2 TagenSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 (1709) Tastur und Maus wieder einschalten?
Frage von LochkartenstanzerWindows 1017 Kommentare

Moin, Ich habe von einem Kunden einen Win10-Rechner bekommen, bei dem weder Tastatur noch Maus geht. Die Hardware funktioniert ...

Humor (lol)
Was könnte man mit einem Server machen? Idee gesucht
Frage von 2SeitenHumor (lol)13 Kommentare

Hey Zusammen Ich habe einen alten HP G2 Rackserver zu Hause rumliegen. 28GB Ram, 1xAMD Prozi mit etwa 2GHz. ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall11 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...

Server-Hardware
Server für Exchange 2016, Kaufberatung
Frage von MazenauerServer-Hardware10 Kommentare

Guten Tag werte Gemeinde, Vorab: Ich dachte es gab mal einen separaten Bereich für solche Anfragen, habe ich leider ...