Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Dateien kopieren und durchnummerieren (Anhängen an Dateinamen)

Frage Entwicklung Batch & Shell

Mitglied: KFCEmbryo

KFCEmbryo (Level 1) - Jetzt verbinden

20.08.2008, aktualisiert 18.10.2012, 5738 Aufrufe, 1 Kommentar

Hallo,

ich habe ein Problem:

Ich will mehrer Dateien aus mehreren Unterverzeichnissen in ein Verzeichnis kopieren.
Dabei dritt folgendes Problem auf:
Meine Daten haben öfters mal, also nicht immer, den gleichen Dateinamen.
was bedeutet, dass sie überschrieben werden.

Was ich bisher habe:

for /f "delims=" %%a in ('dir /b/s /O:D C:\steuern\*%2000%?????????????????????.tif ') do (
xcopy "%%a" "C:\Dokumente und Einstellungen\name\Eigene Dateien\2000-2003*.tif" /i/c/y
)

Eine „For-Schleife“ die nach Kriterien sucht und die Dateien in ein Zielverzeichnis kopiert.
Wie kann ich jedem Dateinamen eine Zahl mitgeben die, die Datei eindeutig macht und sie damit nicht mehr überschrieben wird?

Beispiel:

Unterverzeichnis 1:
Hamster.tif

Unterverzeichnis 2:
Hamster.tif

Nach Ablauf der Batch:

Verzeichnis:
Hamster1.tif
Hamster2.tif

Dabei muss nicht geprüft werden ob die Datei bereits vorhanden ist.
Also im Prinzip nur stupides Durchnummerieren.

Danke euch.

Gruß
Sepp
Mitglied: bastla
20.08.2008, aktualisiert 18.10.2012
Hallo KFCEmbryo und willkommen im Forum!

Soferne
Dabei muss nicht geprüft werden ob die Datei bereits vorhanden ist.
Also im Prinzip nur stupides Durchnummerieren.
tatsächlich angewandt wird, kann Dein Ergebnis - für den Fall, dass es zwischen den ganzen Hamsten auch das eine oder andere Meerschweinchen gibt - allerdings anstelle von "Hamster1.tif" bis "Hamster4.tif" eher so aussehen:

Hamster1.tif
Hamster3.tif
Hamster6.tif
Hamster8.tif

Wenn Dir das schon genügt (der Zweck, doppelte Dateinamen zu vermeiden, wäre ja erfüllt), könntest Du es so versuchen:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "Ziel=%userprofile%\Eigene Dateien\2000-2003.tif" 
03.
if not exist "%Ziel%\" md "%Ziel%" 
04.
 
05.
set /a Nr=1 
06.
for /f "delims=" %%a in ('dir /b/s /O:D C:\steuern\*%2000%?????????????????????.tif ') do ( 
07.
    copy "%%a" "%Ziel%\%%~na!Nr!%%~xa">nul 
08.
    set /a Nr+=1 
09.
)
Sollten auch Tiere mit "!" im Namen vorkommen, wäre die Verwendung eines Unterprogrammes nötig, damit diese "!" (und bei mehreren auch der Teil dazwischen) nicht verloren gehen ...

Dazu (und falls es doch fortlaufende Nummern sein sollen) siehe zB Ordnerhierarchie auf eine Ebene reduzieren?.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
C und C++
Dateien in Ordner kopieren anhand vom Teil eines Dateinamen (22)

Frage von onlyforu8373 zum Thema C und C ...

Vmware
gelöst Dateien auf eine VM im EXSi kopieren (3)

Frage von Stefan007 zum Thema Vmware ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(2)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkgrundlagen
Kann auf Freigabe nicht Zugreifen (19)

Frage von leon123 zum Thema Netzwerkgrundlagen ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Windows Server
DC virtualisieren + wie sichern (SingleDC-Environment) (12)

Frage von KMUlife zum Thema Windows Server ...

Festplatten, SSD, Raid
RAID Controller mit Trim-Funktion, wie ermitteln (11)

Frage von pixel24 zum Thema Festplatten, SSD, Raid ...