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

Dateinamen über CMD abschneiden

Frage Microsoft Windows Tools

Mitglied: Patrick1988

Patrick1988 (Level 1) - Jetzt verbinden

16.04.2013 um 13:40 Uhr, 2119 Aufrufe, 6 Kommentare


Hallo,

ich habe eine wahrscheinlich für euch relativ leicht zu beantwortende Frage.

Ich habe Dateien mit folgender Bezeichnung:

BODY-PHANTOM.CT.THORAX_THNATIV_(ADULT).0009.0001.2013.04.10.20.17.36.803718.50570424

Da in einem Ordner sehr viele dieser Files sind und ich die fortlaufende Nummer am Ende für weitere Verwendungen brauche (hier die 0001) müsste ich diesen Filenamen ab dieser Ziffer abschneiden.

Manuell ist das leider zu aufwenig, da es über 100 dieser Dateien sind.

Gibt es eine Möglichkeit über das CMD diese Dateinamen zu kürzen (rename)?

Vielen Dank für Eure Antworten.

Beste Grüsse

Patrick
Mitglied: bastla
16.04.2013, aktualisiert um 15:08 Uhr
Hallo Patrick1988 und willkommen im Forum!

Wäre demnach der gewünschte neue Dateiname "0001.2013.04.10.20.17.36.803718.50570424"?

Falls ja: Nach welcher Systematik kann die Aufteilung erfolgen (weshalb würde zB "0009" wegfallen), und ist das Namensschema (mit Trennung durch "." und/oder "_") für alle Dateien gleich?

Grüße
bastla
Bitte warten ..
Mitglied: colinardo
16.04.2013, aktualisiert um 15:33 Uhr
Hi Patrick1988,
hier ein VBS-Script - Ordner noch in Zeile 2 angeben.

Unterschiedliche RegularExpression-Patterns für Zeile 8 (je nach Anforderung):
Ich gehe davon aus das dieses Muster bei allen Dateien gleich bleibt 0000.0001, also 4 Zahlen "." 4 Zahlen

Extrahiert alles von Anfang an bis ....0001
myRegExp.Pattern = "^(.*\.\d{4}\.\d{4}).*$"
Extrahiert 0001... und den Rest des Namens:
myRegExp.Pattern = "^.*\.\d{4}\.(\d{4}).*)$"
VBS-Script
01.
Set fso = WScript.CreateObject("Scripting.Filesystemobject") 
02.
Set rootFolder = fso.GetFolder("C:\temp\") 
03.
 
04.
For Each file In rootFolder.Files 
05.
	Dim newFilename 
06.
	Set myRegExp = New RegExp 
07.
	myRegExp.IgnoreCase = True 
08.
	myRegExp.Pattern = "^(.*\.\d{4}\.\d{4}).*$" 
09.
	Set myMatches = myRegExp.Execute(file.Name) 
10.
	If myMatches.Count >= 1 Then 
11.
		Set myMatch = myMatches(0) 
12.
		If myMatch.SubMatches.Count >= 1 Then 
13.
			newFilename = myMatch.SubMatches(0) 
14.
			file.name = newFilename 
15.
		End If 
16.
	End If 
17.
Next
Grüße Uwe
Bitte warten ..
Mitglied: Dilbert-MD
16.04.2013 um 16:38 Uhr
Würde es auch eine Software (Freeware) tun?
Schau Dir mal die Funktionen von AntRenamer oder ähnlichen Programmen an.
Gruß
Holger
Bitte warten ..
Mitglied: Patrick1988
16.04.2013 um 16:47 Uhr
Hallo bastla,

nein ich brauche den vorderen Teil so dass die Endung dann lautet ...0001
Es waren bei jedem Dateinamen die vorderen 49 Zeichen (falls ich mich jetzt nicht verzählt habe)

Danke für die schnelle Antwort.
Bitte warten ..
Mitglied: bastla
16.04.2013 um 22:52 Uhr
Hallo Patrick1988!

Ich komme nur auf 48 Zeichen - soferne keines davon ein "!" und die Zeichenanzahl tatsächlich konstant ist, könnte das so gehen:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "Ordner=D:\Dein Ordner" 
03.
 
04.
pushd "%Ordner%" 
05.
for /f "delims=" %%i in ('dir /b/a-d') do ( 
06.
    set "Name=%%i" 
07.
    echo ren "%%i" "!Name:~,48!" 
08.
09.
popd 
10.
pause
Wegen des "echo" vor dem "ren" läuft der Batch als Demo - es werden die Umbenenn-Befehle nur angezeigt, aber nicht ausgeführt. Wenn das Ergebnis gut aussieht, kannst Du das "echo" entfernen und ernst machen ...

Grüße
bastla
Bitte warten ..
Mitglied: Patrick1988
17.04.2013 um 10:59 Uhr
Hallo bastla,

Hat alles wie gewollt funktioniert.
Vielen Dank an dich und auch die anderen Antworten.

Tolles Forum!

Grüsse

Patrick
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

Batch & Shell
CMD Verschlüsslung ( Batch ) (9)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
Schleife mit todos CMD

Frage von TommyDerWalker zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (10)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...