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

Verschieben und Umbenennen mit fortlaufender Nummerierung

Frage Entwicklung Batch & Shell

Mitglied: deltamk

deltamk (Level 1) - Jetzt verbinden

04.04.2013 um 18:49 Uhr, 2133 Aufrufe, 4 Kommentare

Hallo,

ich habe ein kleines Problem und ich bekomme es einfach nicht so hin wie ich es brauche.
Habe schon mehrere Vorschläge aus dem Forum probiert, aber es passt nicht genau zu meinem Problem.

Ich habe in meinem Quellordner c:\testquelle verschiedene Dateien mit der Endung .ABC liegen.

c:\testquelle
fdggfgh.ABC
3ed556t.ABC
3456fsf.ABC
....

diese solle per Bat oder cmd in einen anderen Ordner verschoben werden (c:\testziel) und dabei umbenannt werden.
Der Dateiname soll immer mit AAAAA beginnen und danach immer mit einer dreistelligen Nummer mit führenden Nullen bezeichnet werden. Die Dateiendung soll gleich der Quelldatei sein:

c:\testziel
AAAAA001.ABC
AAAAA002.ABC
AAAAA003.ABC
......

Wichtig wäre noch, das bei dem umbenennen geprüft wird, ob es in dem Ordner schon eine Datei mit dem Namen gibt und sonst mit der nächsten Nummer fortfährt. In dem o.g. Beispiel wäre das z.B. dann bei dem nächsten Aufruf die AAAAA004.ABC. Dies sollte zwar nicht vorkommen und die Datei in der Zwischenzeit längst abgeholt werden, aber es kann vorkommen das noch Dateien vom letzten Aufruf vorhanden sind.

Ist das mit einem Batch machbar? Wäre super wenn wir das hinkriegen.

Vielen Dank schonmal.

Gruß
Mitglied: Endoro
04.04.2013 um 18:54 Uhr
Hallo deltamk,

hast du schon was versucht, woran man anknüpfen könnte?

Gruss!
Bitte warten ..
Mitglied: deltamk
04.04.2013 um 18:58 Uhr
Moin,

das war ja eine Blitzantwort. Ich habe mal das aus diesem Thread probiert http://www.administrator.de/forum/datei-kopieren-und-anschliesend-fortl ... .

Das hat aber nicht so gepasst. Vor allem weiß ich nicht wie er alle Dateien des Quellordners nimmt.
Bitte warten ..
Mitglied: miniversum
04.04.2013 um 19:12 Uhr
Hallo,

Ungetestet funktioniert das ungefär so:

01.
@echo off 
02.
set num=1 
03.
FOR /F "delims=" %%i in ('dir /b c:\testquelle\*.ABC') do call:MoveRename "%%i" 
04.
goto:eof 
05.
 
06.
:MoveRename 
07.
set numstr=000%num% 
08.
set numstr=%numstr:~-3% 
09.
if not exist c:\testziel\AAAAA%numstr%.ABC ( 
10.
move "c:\testquelle\%~1" c:\testziel\AAAAA%numstr%.ABC 
11.
goto:eof 
12.
13.
set /a num=num+1 
14.
goto:MoveRename
Bitte warten ..
Mitglied: bastla
04.04.2013, aktualisiert um 20:46 Uhr
Hallo deltamk!
wie er alle Dateien des Quellordners nimmt.
Indem Du zB
set "Log=Logfilename.log"
durch
set "Log=*.ABC"
ersetzt oder gleich
for %%i in ("%Quelle%\*.ABC") do ...
verwendest?

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...