libplist semble répondre à vos besoins. Il existe un nom de package Ubuntu "libplist-utils" que vous pouvez référencer dans votre script :
Description-fr:Convertisseur de liste de propriétés AppleCe paquet contient des outils pour convertir les fichiers de liste de propriétés Apple de binaire en XML et vice-versa. Il fait partie de la pile libimobiledevice, permettant d'accéder aux iDevices (iPod, iPhone, iPad...).
Page d'accueil :http://www.libimobiledevice.org/
Commande d'installation :
apt-get install libplist-utils
Exemple d'utilisation :
plistutil -i Info.plist
Depuis .plist
les fichiers sont déjà XML (ou peuvent être facilement convertis), vous avez juste besoin de quelque chose pour décoder le XML.
Pour cela, utilisez 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
$
Vous devriez être capable de comprendre le reste.
Ou pour Perl, use XML::Simple;
(voir perldoc
pour en savoir plus) pour mettre la structure de données XML dans un hachage.