OSX: Versionsinformationen aus Installationsdatei (.pkg) auslesen Hi, hat jemand Erfahrung mit Installationsdateien von OSX. Ich möchte die Versionsinformationen aus dem Paket gerne auslesen, per Shell-Skript oder AppleScript. Auf diese Weise könnte ich eine automatisierte Installation schreiben, die überprüft ob die entsprechende Version bereits installiert ist. An die Version des installierten Paketes kommt man über [CODE]pkgutil --pkg-info com.growl.growl.pkg[/CODE]. Etwas ähnliches muss doch auch mit einem noch nicht installierten Paket funktionieren. Wenn ich in die Installationsdatei hineinschaue, dann finde ich die entsprechenden Einträge in der "PackageInfo", dort wird der identifier und die version definiert, aber dazu müsste ich die Pakete immer erst auspacken, also nicht ganz so schön. Danke ... |
AW: OSX: Versionsinformationen aus Installationsdatei (.pkg) auslesen Wirst wohl nicht um's Entpacken drumrum kommen, aber das kannst du ja auch automatisch in einen temporären Ordner tun und nach der Prüfung / Installation wieder löschen. |
AW: OSX: Versionsinformationen aus Installationsdatei (.pkg) auslesen Hmm ... ok das habe ich nicht geschafft. Ich muss also jetzt die Abfrage in das Shell-Skript reinnehmen, aber dafür funktioniert mein Skript jetzt. Mit nur einem Shell-Aufruf kann ich jetzt die Pakete installieren, die ich auf allen Rechnern installiert haben möchte. Bei nochmaligem Aufruf werden nur die Updates installiert. Wenn es jemanden interessiert: [code]#!/bin/bash # install packages # get version with pkgutil --pkg-info com.growl.growl.pkg echo "=== installing packages ===" install_pkg() { string=`pkgutil --pkg-info "$1"` string=${string#*'version: '*} string=${string%*'volume:'*} string=`echo "$string" | tr -cd "[:print:]"` [ $string ] || string="XXX" if [ "$string" != "$2" ]; then echo "Install $1 ($3)? (y/n)" read -s -n 1 [ "$REPLY" = "y" ] && sudo installer -pkg $3 -target LocalSystem fi } install_pkg "com.growl.growl.pkg" "1.2" "Growl.pkg" install_pkg "com.Logitech.Control Center.pkg" "3.0.0" "LogitechControlCenter.mpkg" install_pkg "com.google.macfuse" "2.0" "MacFUSE.pkg" install_pkg "org.catacombae.ntfs-3g_package" "2009.4.4" "MacFUSE_NTFS3G.mpkg" install_pkg "net.culater.simbl.SIMBL.pkg" "9" "SIMBL.pkg" install_pkg "com.sweetpproductions.SafariCookies.pkg" "1.3" "Safari_Cookies.pkg" install_pkg "org.TrueCryptFoundation.TrueCrypt" "6.3" "TrueCrypt.mpkg" install_pkg "tuntap.tap" "1" "tuntap.pkg" echo "=== installing files to /Library ===" sudo rsync -rulv Library / echo "=== package installation complete ==="[/code] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:24 Uhr. |
Powered by vBulletin® Version 3.8.10 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.