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

Ordner anhand von txt-Dateien erstellen

Frage Entwicklung Batch & Shell

Mitglied: cotopaxi

cotopaxi (Level 1) - Jetzt verbinden

10.01.2010 um 20:49 Uhr, 4525 Aufrufe, 7 Kommentare

Liebe Spezialsiten,

mein Problem(e):

in einem Ordner sind Textdateien mit dem Format: Künstler - Titel.txt vorhanden.
Daraus sollen jeweils Ordner im selben Verzeichnis erstellt werden.

D:\Songs\Künstler - Titel

Wenn es mehrere Titel eines Künstler gibt z.B Künstler - Titel01.txt, Künstler - Titel02.txt
sollen daraus werden

D:\Songs\Künstler\Künstler - Titel01
D:\Songs\Künstler\Künstler - Titel02

Kann da jemand helfen?

Liebe Grüße
Cotopaxi
Mitglied: bastla
10.01.2010 um 21:02 Uhr
Hallo cotopaxi!

Etwa so:
01.
@echo off & setlocal 
02.
set "Basis=D:\Songs" 
03.
 
04.
for %%i in ("%Basis%\*.txt") do set "DName=%%~ni" & call :ProcessFile "%%i" 
05.
pause 
06.
goto :eof 
07.
 
08.
:ProcessFile 
09.
for /f "delims=§" %%a in ("%DName: - =§%") do set "Kuenstler=%%a" 
10.
echo md "%Basis%\%Kuenstler%\%DName%" 2>nul 
11.
goto :eof
Das "echo" vor dem "md" sorgt dafür, dass nur die Befehle zum Erstellen der Ordner angezeigt, die Ordner aber noch nicht erstellt werden - wenn alles vernünftig aussieht, einfach das "echo" entfernen (die Zeile "pause" wird dann eigentlich auch nicht mehr benötigt) ...

[Edit] Da es ja keine "Künstler"-Ordner geben soll, die nur einen einzigen "Titel"-Ordner enthalten, könnte mit folgendem zweiten Batch (Achtung: Keine Testversion - die Ordnerstruktur wird sofort geändert, daher als "Basis" bitte einen Testordner mit einigen kopierten Test-Unterordnern verwenden!) der gewünscht Zustand hergestellt werden:
01.
@echo off & setlocal 
02.
set "Basis=D:\SongsTest" 
03.
 
04.
for /d %%i in ("%Basis%\*.*") do ( 
05.
    for /f %%a in ('dir /ad "%%i"^|findstr "Verzeichnis(se),"') do if "%%a"=="3" ( 
06.
        for /d %%f in ("%%i\*.*") do move "%%f" "%Basis%\" 
07.
        if not errorlevel 1 rd "%%i" 
08.
09.
)
[/Edit]

Noch zu überlegen: Was soll in Zukunft geschehen, wenn ein weiterer Titel eines Künstlers, von dem es bisher nur einen Titel gab, hinzukommt? Insofern wäre vielleicht die einheitliche Struktur "D:\Songs\Künstler\Künstler - Titel" auch für (derzeit) einzelne Titel sinnvoll (und der zweite Batch entbehrlich).

Grüße
bastla
Bitte warten ..
Mitglied: cotopaxi
10.01.2010 um 21:33 Uhr
Lieber basla,

der HAMMER! Ich bin super happy mit deiner schnellen Antwort.
Alles läuft wie "Länderspiel".

Vielen DANK!!!
Bitte warten ..
Mitglied: bastla
10.01.2010 um 21:36 Uhr
Hallo cotopaxi!

Freut mich (wobei ich noch auf meine am Ende angefügte Überlegung hinweisen möchte) ...

Grüße
bastla
Bitte warten ..
Mitglied: cotopaxi
10.01.2010 um 21:41 Uhr
Hallo bastla.

stimmt die erste Version ist für hinzukommende Titel günstiger.

Noch mal vielen Dank.

Gruß
cotopaxi
Bitte warten ..
Mitglied: cotopaxi
10.01.2010 um 21:45 Uhr
Hallo bastla,

da fällt mir noch siedend heiß ein, dass doch die eigentlichen txt-Dateien in die jeweiligen Verzeichnisse kopiert werden sollen.
Ist das machbar?

gruß
cotopaxi
Bitte warten ..
Mitglied: bastla
10.01.2010 um 21:54 Uhr
Hallo cotopaxi!

Ich hatte mich auch schon gefragt, was mit diesen Dateien weiter passieren sollte - meine Antwort wäre allerdings "Verschieben" gewesen ...

Zum Kopieren die Zeile 10 durch
md "%Basis%\%Kuenstler%\%DName%" 2>nul && copy %1 "%Basis%\%Kuenstler%\%DName%\"
ersetzen, und falls Du doch verschieben wolltest, aus dem "copy" ein "move" machen ...

Grüße
bastla
Bitte warten ..
Mitglied: cotopaxi
10.01.2010 um 22:14 Uhr
Hallo bastla,

erschreckend, wie super das in diesem Forum funktioniert, da fällt mir nichts mehr ein.
Kopieren ist in der Tat nicht so sinnvoll. Habe wie du anmerkst einfach move verwendet.

1000 Dank!

Gruß
cotopaxi
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
Windows Server
gelöst Freigegebener Ordner "Eigene Dateien" (8)

Frage von JensDND zum Thema Windows Server ...

Windows 10
Löschen von Ordner mit Dateien (3)

Frage von jerry32 zum Thema Windows 10 ...

Windows Userverwaltung
gelöst Ordner und Dateien in Domänenprofilen ausschließen (8)

Frage von BleppSatter zum Thema Windows Userverwaltung ...

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

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

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

DSL, VDSL
DSL-Signal bewerten (8)

Frage von SarekHL zum Thema DSL, VDSL ...