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

Ordnerstruktur auflösen, neue erstellen, Dateien verschieben

Frage Entwicklung Batch & Shell

Mitglied: TBombadil

TBombadil (Level 1) - Jetzt verbinden

24.01.2008, aktualisiert 27.01.2008, 12781 Aufrufe, 4 Kommentare

Hi Leute,

ich sortiere gerade mein Musikarchiv und komme irgendwie nicht weiter, weil alles ewig dauert. Ich hatte mal eine Batchdatei, die die meisten Dinge automatisch gemacht hat, aber die ist beim letzten Crash verloren gegangen (lag auf C: ...).

Also folgendes:
In einem Ordner befindet sich pro Musikalbum ein Ordner (Bspw. "Album1", "Album2" usw.).
In jedem Album-Ordner sind entweder Unterordner oder auch nicht (bspw. "Unter1", "Unter2" usw.).

Was ich jetzt immer per Hand mache und wofür ich lieber ein Script hätte (Beispiel für den Ordner Album1, muss ich eben für jeden Ordner machen):

1. alle Dateien aus den Unterordnern ("Unter...") in den übergeordneten Album-Ordner (Album1) verschieben und die Unterordner löschen.
2. alle *.m3u-Dateien löschen
3. einen Unterordner Album1\_misc\ erstellen und die Datei tn_cover.jpg (so sie denn vorhanden ist) aus dem Ordner Album1 dorthin verschieben.
4. wenn weitere jpg- oder png-Dateien vorhanden sind, einen Unterordner Album1\_artwork\ erstellen und diese dorthin verschieben.
5. alle restlichen Dateien außer *.flac in den Unterordner Album1\_misc verschieben
6. das dann auch für die anderen Ordner (Album2 bis AlbumX)
7. Fertig.

Ich habe leider überhaupt keinen Plan, wie ich das angehen soll. Hat vielleicht einer von euch Cracks da draußen eine Idee oder Hilfe parat?

Gruß,
TBombadil
Mitglied: bastla
24.01.2008 um 15:34 Uhr
Hallo TBombadil und willkommen im Forum!

Der folgende Batch ist nur oberflächlich getestet, daher bitte zuerst mit Kopien arbeiten ...
01.
@echo off & setlocal 
02.
set "Ordner=D:\Ganz viel Musik" 
03.
for /d %%i in ("%Ordner%\*.*") do ( 
04.
	pushd "%%~fi" 
05.
	echo Bearbeite: %%i 
06.
	for /d %%a in (*.*) do move /-Y "%%a\*.*" . >nul && rd "%%a" 
07.
	del *.m3u 2>nul 
08.
	md _misc 2>nul 
09.
	if exist "tn_cover.jpg" move /-Y "tn_cover.jpg" _misc\ >nul 
10.
	dir *.jpg *.png >nul && (md _artwork 2>nul && move /-Y *.jpg _artwork\ && move /-Y *.png _artwork\) >nul 
11.
	for /f "delims=" %%f in ('dir /b /a-d^|findstr /v /e /i ".flac"') do move /-Y "%%f" _misc\ 
12.
	popd 
13.
)
Anmerkungen:

Anzupassen ist natürlich der Startordner "D:\Ganz viel Musik".

Der Schalter "/-Y" nach den einzelnen "move"-Befehlen soll verhindern, dass beim Verschieben schon existierende gleichnamige Dateien im Zielordner ohne Rückfrage überschrieben werden.

Es wird nur eine Unterordnerebene behandelt.

Grüße
bastla
Bitte warten ..
Mitglied: TBombadil
24.01.2008 um 16:33 Uhr
Hi, danke für die Mühe!
Wenn ich mir das so angucke, hätte es ewig gebraucht, bis ich sowas fertig gebracht hätte!

Funktioniert auch einwandfrei, nur die *.png werden nicht verschoben.

Gruß,
TBombadil
Bitte warten ..
Mitglied: Biber
24.01.2008 um 16:46 Uhr
Moin TBombadil,

wenn keine *.jpg-Dateien gefunden werden, dann werden keine *.png-Dateien behandelt.

Streiche:
.. && move /-Y *.jpg _artwork\ && move ...(die *.png's)

Setze:
.. && move /-Y *.jpg _artwork\ & move ...

Grüße
Biber
Bitte warten ..
Mitglied: TBombadil
27.01.2008 um 20:51 Uhr
Cool, funktioniert einwandfrei! Vielen Dank nochmal!
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

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

Ähnliche Inhalte
Batch & Shell
Batch: .rar-Pakete automatisch Ordner erstellen und verschieben (2)

Frage von BowserMD zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Ordner erstellen und verschieben (6)

Frage von Fromeonly zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateien anhand des Namens in neue Ordner verschieben (17)

Frage von Cookiemonster zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

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

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...