[gelöst mit Powershell] txt und Bilddatei Datei verarbeiten

Retrogamer

Enthusiast
Thread Starter
Mitglied seit
08.11.2007
Beiträge
6.283
Lösung unten.


Hallo zusammen,

ich habe folgende Aufgabe zu erledigen und habe bisher leider keine Ahnung wie ich am besten starte.

Ziel ist eine Batchdatei/Programm/Webservice auf die/das/den man einen Ordner schiebt/hochlädt und die/der dann folgendes macht:

1. Der Ordner enthält jeweils paarweise gleichnamige txt und Bilddateien. (123.txt, 123.gif, 456.txt, 456.png ...)
2. Die txt werden zu html umbenannt.
3. Die html werden bearbeitet und vor den Inhalt sowie hinter den Inhalt werden Textstrings eingefügt. (Um daraus auch inhaltlich HTML Dateien zu machen)
4. Die Dateipaare werden dann zusammen in einem gleichnamigen zip Archiv verpackt. (123.zip, 456.zip...)

Wie bewerkstellige ich das am besten? Ich habe keine Programmiererfahrung mit Ausnahme von Batch- und Linux Shell Scipten und dem Anpassen von HTML, PHP und Javascript.
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Ich kann zwar nichts zur Lösung deines Problems beitragen, würde aber gern wissen, wie man zu so einer Aufgabe kommt obwohl man keine Ahnung davon hat und es einfach nicht kann. Man kommt ja auch nicht auf die Idee, einen Motor am Auto zu zerlegen oder ähnliches. Das soll jetzt kein "hate" oder ähnliches sein, frage mich nur wie man zu solchen Aufgaben kommt.
 
Wenn es statt *.txt auch Markdown sein darf, dann würde sich ein Tool wie Jekyll anbieten. Das liest *.md (Text)Dateien, CSS und HTML Templates ein und generiert daraus dann eine statische HTML Seite. Es gibt noch weitere Generatoren, meist für Blogs, Dokumentation o.Ä. Weitere Vertreter wären z.B. Sphinx, MKDocs und noch viele weitere. Skripten kann man das zb per Bash oder Python und dann automatisiert auf einem Server laufen lassen.
 
Mit einem Linux-Script einfach realisierbar. Ich schlage ein Bash-Script vor. Parameter1 ist der Ordnername.
Dazu guckst du dir die Bash-Script-Referenz an und googelst nach Beispielen.
Dateien werden einfach mit mv (move) umbenannt.
Die Textdateien kannst du mit sed (stream editor) manipulieren - sehr einfach und komfortabel. Dazu guckst dir mal an, wie sed funktioniert. Bei Youtube gibt's auch Beispiele.
Anschließend tust du die Dateien mit zip in ein Archiv.

Ich hab durchaus das Alter des Threads gesehen, trotzdem kann ich dich evtl. motivieren, dich mit den Programmen zu beschäftigen.

gruß
hostile
 
Ich kann zwar nichts zur Lösung deines Problems beitragen, würde aber gern wissen, wie man zu so einer Aufgabe kommt obwohl man keine Ahnung davon hat und es einfach nicht kann. Man kommt ja auch nicht auf die Idee, einen Motor am Auto zu zerlegen oder ähnliches. Das soll jetzt kein "hate" oder ähnliches sein, frage mich nur wie man zu solchen Aufgaben kommt.

Ich bin kein Mensch der vor etwas zurück schreckt nur weil er es *noch* nicht kann. Wenn ich ein Problem habe, dann versuche ich das Problem entsprechend zu lösen statt mich damit abzufinden und heutzutage ist es einfacher denn je an die nötigen Infos dazu zu kommen. Bei der Arbeit müssen wir halt täglich die oben genannte Aufgabe händisch erledigen was ca. 10 Minuten pro Tag pro Mitarbeiter kostet, mit einem passenden Script könnte man diese Zeit quasi auf 0 reduzieren und ich habe etwas das ich bei der nächsten Gehaltsverhandlung mit auf die Liste schreiben kann.

Wenn du nur das machst was du schon kannst oder dir vertraut ist, solltest einmal deine Lebenseinstellung dazu überdenken. *nohate*


Ich konnte mein Problem nun so lösen und es klappt hervorragend und spart unsere Firma locker 180 Arbeitsstunden pro Jahr was mal grob geschätzt an die 4000€ ist.

Powershell Script:
Bestimmt nicht die eleganteste Variante, aber ohne Fehlermeldungen und es klappt.


1599924778213.png



EDIT:
Encoding Utf8 sollte man noch bei Get-Content und bei Out-File nutzen, sonst ist das Ergebnis nicht wirklich nutzbar als HTML.
1603187634037.png
 

Anhänge

  • 1599924565610.png
    1599924565610.png
    46,4 KB · Aufrufe: 135
Zuletzt bearbeitet:
Ich bin kein Mensch der vor etwas zurück schreckt nur weil er es *noch* nicht kann. Wenn ich ein Problem habe, dann versuche ich das Problem entsprechend zu lösen statt mich damit abzufinden und heutzutage ist es einfacher denn je an die nötigen Infos dazu zu kommen. Bei der Arbeit müssen wir halt täglich die oben genannte Aufgabe händisch erledigen was ca. 10 Minuten pro Tag pro Mitarbeiter kostet, mit einem passenden Script könnte man diese Zeit quasi auf 0 reduzieren und ich habe etwas das ich bei der nächsten Gehaltsverhandlung mit auf die Liste schreiben kann

Mit dem was du schreibst, bin ich völlig bei dir. Schön das Du es lösen konntest. Für mich klang es nur so als ob dein Vorgesetzter das von dir verlangt hat, dem scheint ja nicht so. Du hast es aus eigener Initiative gemacht.

Ich habe es in der ehemaligen Firma erlebt, dass Kollegen mit Aufgaben beauftragt wurden, womit sie völlig überfordert waren. Daher nur meine Frage.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh