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
GELÖST

Per Batch Punkte aus Dateinamen entfernen

Frage Entwicklung Batch & Shell

Mitglied: JoKer23

JoKer23 (Level 1) - Jetzt verbinden

29.03.2006, aktualisiert 19:22 Uhr, 14282 Aufrufe, 7 Kommentare

Problem bei einem System mit Punkten in Dateinamen

Ich suche eine Möglichkeit unter Windows (am liebsten per Batch) mehrere Dateien mit der Formatierung:
name.YYYY-MM-TT-HH.MM.SS.PDF
in
nameYYYY-MM-TT-HHMMSS.PDF
zu verwandeln.
Also kurz gesagt, die Punkte aus dem Dateinamen entfernen. Unter Linux hab ich das schon am Laufen (Perl & RegEx), aber aufgrund der gottgegebenen administrativen Faulheit, die mir innewohnt, möchte ich das in Zukunft gerne den Kunden unter Windows selber machen lassen.

Ich habe bereits eine recht ansehnliche Antwort zu einem ähnlichen Thema von Biber gefunden, aber leider war ich mit meinen eher mäßigen Batch-Erfahrungen nicht in der Lage, das so umzuschreiben, dass es auf mein Problem passt.

lg,
Jan
Mitglied: djbrandt
29.03.2006 um 10:48 Uhr
Hi,

----schnipp renamefiles.cmd -------
@echo off
for /f %%i in (test.txt) do @call :renamefile %%i
goto ende

:renamefile
set fname=%~n1
set ext=%~x1
set newname=%fname:.=%

ren %1 %newname%%ext%

goto ende

:ende

----schnapp renamefiles.cmd -------


in der test.txt stehen die Dateinamen drin
(dir /b name.*.pdf > test.txt)



Grüße

Dieter
Bitte warten ..
Mitglied: Biber
29.03.2006 um 11:01 Uhr
Moin,

da war ich wohl zu langsam..

Ich hätte es wieder so gelöst:
01.
::-- snipp RenPdfs.bat 
02.
:: ALT: name.YYYY-MM-TT-HH.MM.SS.PDF --> Dateimaske *.????-??-??-??.??.??.PDF 
03.
:: in NEU: nameYYYY-MM-TT-HHMMSS.PDF 
04.
@echo off & setlocal enableDelayedExpansion 
05.
For %%a in ( *.????-??-??-??.??.??.PDF) do Set "Name=%%~na" & ren "%%a" "!name:.=!.PDF" 
06.
::-- snapp RenPDFs.bat
(Unterstellung: der Batch wird in dem Verzeichnis gestartet, in dem die *.PDFs sind)
Über eine Unterverzeichnisstruktur / eine ganze Platte:
01.
::-- snipp GlobalRenPdfs.bat 
02.
@echo off & setlocal enableDelayedExpansion 
03.
For /f %%a in ('dir /b /s "%1\*.????-??-??-??.??.??.PDF"') do Set "Name=%%~na" & ren "%%~dpnxa" "!name:.=!.PDF" 
04.
::-- snapp GlobalRenPDFs.bat 
(Aufruf mit 'GlobalRenPdfs d:' oder 'GlobalRenPdfs "f:\Eigene Dateien"' oder ohne Parameter = aktuelles Laufwerk)

Gruß Biber
Bitte warten ..
Mitglied: JoKer23
29.03.2006 um 11:14 Uhr
Ihr seid echt klasse,
Vielen Dank.

P.S.: Beide Lösungen funktionieren absulut zufriedenstellend
Bitte warten ..
Mitglied: djbrandt
29.03.2006 um 11:28 Uhr
Hi Biber,

das ist schon heftig, in einer Zeile.

Hut ab!

Grüße

Dieter
Bitte warten ..
Mitglied: Biber
29.03.2006 um 11:30 Uhr
@Joker
...absulut zufriedenstellend ...

Na, das geht uns aber runter wie Öl..

Da setze ich mal schnell den Beitrag auf gelöst, bevor Du uns hier mit solchen Superlativen zum Erröten bringst..

Grüße
Biber
Bitte warten ..
Mitglied: JoKer23
29.03.2006 um 13:19 Uhr
was macht eigentlich des da?
setlocal enableDelayedExpansion
Bitte warten ..
Mitglied: Biber
29.03.2006 um 19:22 Uhr
Moin Jan,

  • suche bitte mal hier mit der Forumssuche nach "DelayedExpansion" -oder-

  • such in der M$-Hilfe nach "verzögert" ( "Help cmd|find "verzögert" ..am CMD-Prompt)

M$ kann das besser oder zumindest kürzer erklären als Dieter und ich zusammen.

Gruß Biber
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...