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

Inhalt Textdatei-a zu Textatei-b per batch in ein bestimmtes Format

Frage Microsoft Windows 7

Mitglied: wolf56

wolf56 (Level 1) - Jetzt verbinden

15.11.2013, aktualisiert 11:42 Uhr, 1394 Aufrufe, 2 Kommentare, 1 Danke

Hallo,
Zwei Programme arbeiten jeweils mit Infos aus Textdateien, jedoch mit unterschiedlichen Formatierungen.
Programm a speichert als Beispiel wie folgt in a.txt:
C:\Users\Vater\Desktop\Test\T 001 - W. D. Rohr - Nrdem - SF.pdf
C:\Users\Vater\Desktop\Test\T 002 - B. W. Aldiss - FoE - SF.pdf
C:\Users\Vater\Desktop\Test\T 003 - J. T. McIntosh - DWz - SF.pdf
Programm b benötigt zum richtigen zuordnen aber Infos aus b.txt in folgendem Format:
"C:\Users\Vater\Desktop\Test\T 001 - W. D. Rohr - Nrdem - SF.pdf" "Nrdem" "W. D. Rohr" "T 001" "SF"
"C:\Users\Vater\Desktop\Test\T 002 - B. W. Aldiss - FoE - SF.pdf" "FoE" "B. W. Aldiss" "T 002" "SF"
"C:\Users\Vater\Desktop\Test\T 003 - J. T. McIntosh - DWz - SF.pdf" "DWz" "J. T. McIntosh" "T 003" "SF"
Wobei noch zwischen den leeren Anführungszeichen ein Tab-sprung ist.

Wie könnte ich das Problem mit einfachen Mitteln lösen?
Mir schwebt vor, per batch den Inhalt zu konvertieren, da es sich meistens um hunderte von Zeilen handelt.
Für Vorschläge und Hilfe wäre ich dankbar.
Da ich aber nicht wirklich Experte in batch-schreiben bin, wäre ich für Beispiele dankbar.

Gruß

wolf56
Mitglied: bastla
15.11.2013 um 15:44 Uhr
Hallo wolf56 und willkommen im Forum!

Als Batch könnte das etwa so gehen:
01.
@echo off & setlocal 
02.
set "Ein=D:\a.txt" 
03.
set "Aus=:D\b.txt" 
04.
 
05.
del "%Aus%" 2>nul 
06.
for /f "usebackq delims=" %%i in ("%Ein%") do ( 
07.
    for /f "tokens=1-4 delims=-" %%a in ("%%~ni") do ( 
08.
        set "A=%%a" & set "B=%%b" & set "C=%%c" & set "D=%%d" 
09.
        call :ProcessLine "%%i" 
10.
11.
12.
goto :eof 
13.
 
14.
:ProcessLine 
15.
set "A=%A:~,-1%" 
16.
set "B=%B:~1,-1%" 
17.
set "C=%C:~1,-1%" 
18.
set "D=%D:~1%" 
19.
>>"%Aus%" echo %1	"%C%"	"%B%"	"%A%"	"%D%" 
20.
goto :eof
Grüße
bastla
Bitte warten ..
Mitglied: wolf56
17.11.2013 um 19:52 Uhr
Hallo bastla,
Danke erst mal für die schnelle Antwort und Beispiel.
Funktioniert einwandfrei wie von mir gewünscht, aber offenbar will das Programm b nicht so wie gewünscht die Datei-b akzeptieren.
Nun ja, soll eben nicht sein.
Das Problem was ich eigentlich habe ist folgendes:
Habe ein paar Hundert PDF-Files.
Aber es gibt zur Zeit kein Programm, mit welchem man aus Dateinamen, die Metadaten(4Tags) in PDF-Files schreiben kann, und gleich gar nicht für mehrere Dateien eines Ordners. Ich lese sehr gern, aber Die PDF-Files haben alle irgendwelche kryptische oder fehlerhafte Tag-Einträge, sodass beim suchen auf einem ebook-reader nur Mist raus kommt. Jedes File einzeln zu bearbeiten würde ja gehen, aber ist eben eine mühselige Arbeit.
Vieleich kann mir ja jemand einen Tip geben, wie ich das Problem lösen kann.

Danke
und Gruß
wolf56
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Bestimmte Daten aus CSV per Windows BATCH Datei in .txt Format schreiben lassen. (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: Textdatei Zeilenweise auslesen (2)

Frage von CreatorX zum Thema Batch & Shell ...

Batch & Shell
gelöst Bestimmte Zeile einer Textdatei mit Batch auslesen (2)

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Windows Update
MS: Update-Server-Adressen OHNE Wildcards (16)

Frage von mrserious73 zum Thema Windows Update ...

Multimedia & Zubehör
Laptop per HDMI an TV - einer geht, einer nicht (10)

Frage von dreizehneinhalb zum Thema Multimedia & Zubehör ...

Microsoft Office
+1.000 Ordner in Outlook: Wie besser? (10)

Frage von Matsushita zum Thema Microsoft Office ...