libplist sembra soddisfare i tuoi requisiti. C'è un nome di pacchetto Ubuntu "libplist-utils" a cui potresti fare riferimento nel tuo script:
Description-it:Convertitore dell'elenco delle proprietà Apple Questo pacchetto contiene strumenti per convertire i file dell'elenco delle proprietà Apple da binario a XML e viceversa. Fa parte dello stack libimobiledevice, fornendo accesso a iDevices (iPod, iPhone, iPad...).
Pagina iniziale:http://www.libimobiledevice.org/
Comando di installazione:
apt-get install libplist-utils
Esempio di utilizzo:
plistutil -i Info.plist
Dal .plist
i file sono già XML (o possono essere facilmente convertiti) hai solo bisogno di qualcosa per decodificare l'XML.
Per questo usa xml2
:
$ cat com.apple.systemsound.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.sound.beep.volume</key>
<real>1</real>
</dict>
</plist>
$ xml2 < com.apple.systemsound.plist
/plist/@version=1.0
/plist/dict/key=com.apple.sound.beep.volume
/plist/dict/real=1
$
Dovresti essere in grado di capire il resto.
O per Perl, use XML::Simple;
(vedi perldoc
per ulteriori informazioni) per inserire la struttura dei dati XML in un hash.