• Es gibt nach dem Softwareupdate eine Reihe von Änderungen und Neuerungen in unserem Forum. Genaueres dazu findet Ihr in dieser Ankündigung. Hinweise, Kritik, Anregungen, Lob und Tadel bitte hier diskutieren.

Mit Applescript xml-Datei auslesen?

eponine

Alkmene
Mitglied seit
27.03.19
Beiträge
30
Hallo, ich bin absoluter Anfänger bzgl. Applescripts, vielleicht kann mir jemand folgende Frage beantworten:
Mir liegt eine .xml-Datei vor, aus der ich gerne irgendwie die Informationen nutzen möchte.
In der Datei steht z.B.:
<items>
<article itemNo="01300"
quantity="1"
>

<file name="80077810.jpg"
/>
</article>
<article itemNo="01800"
quantity="1"
>

<file name="80077811.jpg"
/>

</article>
</items>

Mein Wunsch wäre nun ein Script, welches die Ordner 01300 und 01800 (also article itemNo) erstellt und die jpg-Dateien (die liegen in dem Ordner, in dem auch die xml-Datei liegt) in die Ordner kopiert, und zwar so oft wie bei quantity angegeben.

Geht so etwas und wenn ja wie? Ich erwarte hier keine kostenlose Lösung, aber bevor ich mich jetzt da verrenne wär ich für eine Einschätzung dankbar.
 

sedna

Englischer Kantapfel
Mitglied seit
22.10.08
Beiträge
1.075
Hallo,

ja, dein Vorhaben ist definitiv umsetzbar .... nur mit "reinem" AppleScript wird das sehr aufwändig... mit Zuhilfenahme eines Shellscripts dagegen definitiv einfacher. Mögliche "Werkzeuge" sind z.B. awk, sed und grep.

Ein in AppleScript eingebettetes Shellscript könnte so aussehen:
Code:
set x to do shell script "cat /Pfad/zu/Datei/xxx.xml | awk -F'items' '/=/' | cut -f2- -d= | xargs -n3 echo |tr ' ' ' '"
Alle Zeilen nach "items", die ein "=" enthalten, davon nur, was nach dem "=" steht und jeweils drei davon als Dreiergruppe mit Leerzeichen getrennt in eine Zeile.
Die Ausgabe ("x") ist quasi schon servierfertig, um sie easy mit AppleScript weiter zu verarbeiten.

und die jpg-Dateien […] in die Ordner kopiert, und zwar so oft wie bei quantity angegeben.
Ich sehe keinen Sinn darin, aber da kannst du dir ja schon mal Gedanke machen, wie du die umbenennst... mit fortlaufenden Nummern?

Gruß
 
  • Like
Wertungen: ottomane

eponine

Alkmene
Mitglied seit
27.03.19
Beiträge
30
Hallo! Danke für deine Einschätzung und deine konkreten Vorschläge!
Ich werde meinen Chef vorschlagen, das programmieren zu lassen, ich wollte mich vorher nur absichern, ob es generell möglich ist. Na gut, ich gebe zu ich dachte, ich könnte das eventuell selbst, aber ich bin da völlig raus. Bin ja auch nur Pixelschubser. Vielen vielen Dank. Auch nochmal für deine Scripts von meiner letzten Anfrage, ich liebe sie!
 
  • Like
Wertungen: ottomane