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
Kommentar vom Moderator Biber am 09.05.2013 um 21:15:55 Uhr
Dateien via Skript o.ä umbennen...
set /a rgc+=1
#885
GELÖST

Dateien via Skript o.ä umbenennen. (mp3 Dateien mit 01.Interpret, 02.Interpret usw.)

Frage Entwicklung Batch & Shell

Mitglied: m.reeger

m.reeger (Level 2) - Jetzt verbinden

09.05.2013, aktualisiert 22:56 Uhr, 2251 Aufrufe, 15 Kommentare

Hallo ich bin auf der Suche nach einem Skript der mir sämtliche zahlen aus Dateinamen entfernt, die an den ersten 3 Stellen stehen.

Anbei mal nen Screenshot von meinem Problem
3db641f46bf2f6eb09686acde50fa108 - Klicke auf das Bild, um es zu vergrößern

Ich habe keine Ahnung von .bat Dateien oder .vbs oder ähnliches...
Wäre also nett wenn ihr es für "Trottel" erklärt!

Gruß
Mitglied: bastla
09.05.2013 um 20:11 Uhr
Hallo m.reeger!

Würdest Du wirklich wollen, dass dann der neue Name etwa für das erste Beispiel mit "Leerzeichen-Leerzeichen" beginnt? Außerdem: Warum die Beschränkung auf 3 Stellen?

Grüße
bastla
Bitte warten ..
Mitglied: m.reeger
09.05.2013 um 20:15 Uhr
es sind nur musiktitel, doch im auto ist es immer ärgerlichn etwas mit dem ersten Buchstaben zu suchen :D,
wenn da 001, 002, 003 etc steht...

Die zahlen gehen von 001-100 deshalb die ersten 3 Ziffern.

Ich würde sie nicht durch leerzeichen ersetzten, sondern gerne einfach löschen, wenn möglich!
Bitte warten ..
Mitglied: bastla
09.05.2013 um 20:20 Uhr
Hallo m.reeger!

Meine Frage bezog sich darauf, dass, wenn so wie oben dargestellt, der Name mit "001LeerzeichenMinusLeerzeichen" beginnt, er nach dem Entfernen von "001" mit "LeerzeichenMinusLeerzeichen" beginnen würde - wäre das tatsächlich so gewollt?

Grüße
bastla
Bitte warten ..
Mitglied: m.reeger
09.05.2013 um 20:24 Uhr
Nein wäre so nicht gewollt...

Sorry nicht nachgedacht ;D dabei gabs erst ein Bier ^^

Soll natürlich direkt mit dem Interpreten beginnen also die ersten 6 Stellen weg.
Bitte warten ..
Mitglied: Endoro
09.05.2013 um 20:37 Uhr
Hallo m.reeger,

es sind manchmal sechs, manchmal fünf oder drei zuviel.
Kannst du es auch sehen?

Gruss!
Bitte warten ..
Mitglied: m.reeger
09.05.2013 um 20:40 Uhr
Hallo ja bei ca. 30 % sind es die ersten 6 stellen, bei ca. 60% sind es die ersten 3 Stellen und den restlichen 10% ist es mal die 1. dann die 2. oder gar 4 Stelle.

Was bedeutet das für mich?

Doch alles Händisch ändern?
Wenn ja habe ich viel zu tun, sind 3.208 Dateien
Bitte warten ..
Mitglied: Endoro
09.05.2013 um 20:42 Uhr
Na, du solltest mal klären, was sonst noch alles so am Anfang steht von deinen MP3's, sonst kriegen die alle die Köpfe rasiert
Bitte warten ..
Mitglied: m.reeger
09.05.2013 um 20:48 Uhr
Ja ich habe hier folgenden Beschriftungen:

001$-$Interpret
01.$Interpret
01_Interpret
1.01_Interpret
1.02_Interpret
002-Interpret
002$-$Interpret

Das $ steht für ein leerzeichen
Bitte warten ..
Mitglied: Endoro
09.05.2013 um 21:57 Uhr
Hallo m.reeger,
mir ist leider auch nix geniales eingefallen. Beschäftige dich doch mal mit "sed", wenn du sowas häufiger vorhast.
01.
@echo off &setlocal 
02.
set "start=X:\my\mp3 folder" 
03.
pushd "%start%" 
04.
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9][0-9][0-9] - "') do ( 
05.
	set "fname=%%~i" 
06.
	setlocal enabledelayedexpansion 
07.
	set "nname=!fname:* - =!" 
08.
	echo ren "!fname!" "!nname!" 
09.
	endlocal 
10.
11.
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9][0-9][0-9]-"') do ( 
12.
	set "fname=%%~i" 
13.
	setlocal enabledelayedexpansion 
14.
	set "nname=!fname:*-=!" 
15.
	echo ren "!fname!" "!nname!" 
16.
	endlocal 
17.
18.
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9][0-9]\. "') do ( 
19.
	set "fname=%%~i" 
20.
	setlocal enabledelayedexpansion 
21.
	set "nname=!fname:*. =!" 
22.
	echo ren "!fname!" "!nname!" 
23.
	endlocal 
24.
25.
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9][0-9]_"') do ( 
26.
	set "fname=%%~i" 
27.
	setlocal enabledelayedexpansion 
28.
	set "nname=!fname:*_=!" 
29.
	echo ren "!fname!" "!nname!" 
30.
	endlocal 
31.
32.
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9]\.[0-9][0-9]_"') do ( 
33.
	set "fname=%%~i" 
34.
	setlocal enabledelayedexpansion 
35.
	set "nname=!fname:*_=!" 
36.
	echo ren "!fname!" "!nname!" 
37.
	endlocal 
38.
39.
popd
Setz den MP3-Ordner, schau dir den Output an und lösch die echo's, wenn es iO ist. Beim Umbenennen können natürlich Doubletten auftreten, dann mosert CMD und benennt diese Datei nicht um.

Gruss!
Bitte warten ..
Mitglied: m.reeger
09.05.2013 um 22:17 Uhr
Besten Dank!
Anscheinend bin ich trotzdem zu doof :D

Also der Pfad ist G:\Musik
Die Zeilen 08, 15, 22, 29 & 36 habe ich entfernt.
Wenn ich die .bat nun ausführe passiert nichts...

@echo off &setlocal
set "start=G:\Musik"
pushd "%start%"
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9][0-9][0-9] - "') do (
set "fname=%%~i"
setlocal enabledelayedexpansion
set "nname=!fname:* - =!"
endlocal
)
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9][0-9][0-9]-"') do (
set "fname=%%~i"
setlocal enabledelayedexpansion
set "nname=!fname:*-=!"
endlocal
)
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9][0-9]\. "') do (
set "fname=%%~i"
setlocal enabledelayedexpansion
set "nname=!fname:*. =!"
endlocal
)
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9][0-9]_"') do (
set "fname=%%~i"
setlocal enabledelayedexpansion
set "nname=!fname:*_=!"
endlocal
)
for /f "delims=" %%i in ('dir /b /a-d *.mp3^| findstr /rbc:"[0-9]\.[0-9][0-9]_"') do (
set "fname=%%~i"
setlocal enabledelayedexpansion
set "nname=!fname:*_=!"
endlocal
)
popd
Bitte warten ..
Mitglied: bastla
09.05.2013, aktualisiert um 23:06 Uhr
@ Endoro
Beschäftige dich doch mal mit "sed"
Zur Not sollte es auch ein VBScript tun:
01.
Ordner = "G:\Musik" 
02.
Typ = "mp3" 'in Kleinbuchstaben 
03.
 
04.
Set rE = New RegExp 
05.
rE.Pattern = "^\d+[ -._]+" 'zu entfernende Zeichenfolge als Regular Expression (\d = Ziffer) 
06.
 
07.
Set fso = CreateObject("Scripting.FileSystemObject") 
08.
For Each Datei In fso.GetFolder(Ordner).Files 
09.
    DName = Datei.Name 'Dateinamen zwischenspeichern 
10.
    If LCase(fso.GetExtensionName(DName)) = Typ Then 'nur gewünschten Typ verarbeiten 
11.
        NameNeu = rE.Replace(DName, "") 'unerwünschte Zeichen entfernen 
12.
        If NameNeu <> DName Then If Not fso.FileExists(Ordner & "\" & NameNeu) Then WScript.Echo """" & DName & """ --> """ & NameNeu & """" 'Demo-Ausgabe 
13.
        'If NameNeu <> DName Then If Not fso.FileExists(Ordner & "\" & NameNeu) Then Datei.Name = NameNeu 'Namen wirklich ändern 
14.
    End If 
15.
Next
Das Script (als Beispiel in "G:\NamenBereinigen.vbs" gespeichert) in der CMD-Shell mit
cscript G:\NamenBereinigen.vbs
starten.

Solange am Anfang der Zeile 13 ein Apostroph steht, wird nur angezeigt, wie die Namen geändert würden (nur jene, bei denen eine Änderung erforderlich ist). Wenn das Ergebnis gut aussieht, diesen Apostroph vor Zeile 13 entfernen und an den Anfang der Zeile 12 setzen (so wird nix mehr angezeigt, nur mehr umbenannt).

Grüße
bastla

[Edit] Prüfung auf schon vorhandene Dateinamen ergänzt [/Edit]
Bitte warten ..
Mitglied: m.reeger
09.05.2013, aktualisiert um 22:37 Uhr
Danke sah soweit ganz gut aus...
Apostroph aus Zeile 13 in 12 gesetzt und ja...

C:\Windows\System32\cmd.exe

G:\>cscript G:\NamenBereinigen.vbs <13, 34> Laufzeitfehler in Microsft VBScript: Die Datei ist bereits vorhanden.

Aber es sind nur noch 2.206 Elememte :P
Bitte warten ..
Mitglied: Endoro
09.05.2013 um 22:39 Uhr
Hallo,

nicht die ganze Zeile

nur das Wort echo soll entfernt werden.

Gruss!
Bitte warten ..
Mitglied: bastla
09.05.2013 um 22:40 Uhr
Hallo m.reeger!

Ich habe oben etwas nachgebessert ...

Grüße
bastla
Bitte warten ..
Mitglied: m.reeger
09.05.2013 um 22:44 Uhr
Super!!!!
Tausend Dank!
Dass ihr hier alle soviel Geduld mit uns Halbwissenden habt ^^

Jetzt sind es nur noch 56 Dateien, wo 007 - XXX und 06-_xxx steht.
Das entferne ich per Hand :D
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
gelöst PowerShell Ordnergröße Skript ignoriert versteckte Dateien (3)

Frage von Giffas zum Thema Batch & Shell ...

Microsoft Office
gelöst Per VBA im Verzeichniss dateien mit Wildcard umbenennen (4)

Frage von usenussi zum Thema Microsoft Office ...

Windows 7
gelöst Mehrere Dateien in Windows umbenennen mit Batchjob (4)

Frage von Jeduja zum Thema Windows 7 ...

Batch & Shell
gelöst Verschieben und Umbenennen von Video-Dateien anhand der Nummer im Namen (3)

Frage von Foja.Filmer zum Thema Batch & Shell ...

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 ...