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

Zirkumflex in Dateinamen austauschen

Frage Entwicklung Batch & Shell

Mitglied: ThinkSmart

ThinkSmart (Level 1) - Jetzt verbinden

17.09.2012 um 16:36 Uhr, 2119 Aufrufe, 4 Kommentare

Hallo und allen erst Mal einen schönen Start in die Woche!

Es geht um viele Dateien in einem Ordner (~20.000). Einige der Dateien beinhalten ein Zirkumflex als Trennzeichen für Zusatzinfos im Dateinamen (~500).

Bsp:
01.
EU3232AFFFSSP^22SSEU.dml  
02.
EU3232AFFFSSP^22SSEU3.dml 
03.
EU3232AFFFSSP^23SSEU.dml 
04.
EU3233AFFFSSP^23SSEU.dml
Da weitere Programm im Workflow nicht mit dem Trennzeichen im Dateinamen klarkommen, würde ich es gerne einfach gegen ein anderes ersetzen.
Das ganze hatte ich so vor:

01.
Setlocal EnableDelayedExpansion  
02.
SET RENAMEDIR=%CD%\TMP 
03.
for  %%i in ("%RENAMEDIR%\*^*") do (  
04.
   	set "x=%%~nxi"   
05.
   	ren %%i "!x:^=_!"  
06.
)
Jedoch stoße ich dort auf das Problem, dass der Pfad nicht gefunden wird:

01.
The system cannot find the file specified.
Wenn ich vor dem Rename ein echo setze, wird der Befehl richtig angezeigt, nur eben ohne Zirkumflex. Gibt es dafür eine Lösung?

Gruß
ThinkSmart
Mitglied: bastla
17.09.2012, aktualisiert um 17:05 Uhr
Hallo ThinkSmart!

Versuch es so:
01.
Setlocal EnableDelayedExpansion  
02.
SET "RENAMEDIR=TMP" 
03.
for %%i in ("%RENAMEDIR%\*^*") do set "x=%%~nxi" & call :ProcessFile "%%i" 
04.
goto :eof 
05.
 
06.
:ProcessFile 
07.
ren %~1 "%x:^=_%" 
08.
goto :eof
Grüße
bastla
Bitte warten ..
Mitglied: ThinkSmart
18.09.2012 um 07:43 Uhr
Guten Morgen!

Vielen Dank! Das funktioniert!

Jedoch kommt mir das ein wenig langsam vor, könnte man das noch irgendwie beschleunigen?
Bitte warten ..
Mitglied: bastla
18.09.2012 um 07:58 Uhr
Hallo ThinkSmart!

Am schnellsten geht es, wenn Du von vornherein das entsprechende Sonderzeichen vermeidest ...

Wie lange läuft das denn bei Dir für 500 Dateien, und wie oft muss die Umbenennung erfolgen?

Grüße
bastla
Bitte warten ..
Mitglied: ThinkSmart
18.09.2012 um 08:03 Uhr
Im Prinzip ist es gar nicht so lange, nur das Datenaufkommen könnte noch steigen. Aber danke nochmal.

Ich geb' mich mit der Lösung schon zufrieden. :D Und markier es als gelöst.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

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

Frage von cberndt zum Thema Batch & Shell ...

C und C++
Dateien in Ordner kopieren anhand vom Teil eines Dateinamen (22)

Frage von onlyforu8373 zum Thema C und C ...

Batch & Shell
gelöst PS-Skript anhand Dateinamen und zusätzlich Dateityp (Mapping) verschieben (2)

Frage von cleverm zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateinamen umschreiben batch (5)

Frage von jocheng zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...