[Adobe] HUM.dylibのバージョンを取得する
Adobe Remote Update Manager version : 2.6.0.9LINKに出てくる
HUM.dylibのバージョンを取得する方法
要コマンドラインツール
otool→llvm-otoolが必要です
/Library/Developer/CommandLineTools/usr/bin/llvm-otool
コマンドラインツールのインストールは
xcode-select --install を実行するとユーザーインターフェイスが起動してインストールされる
otoolでバージョンを取得できるのはdylibにplistが埋め込まれている場合に限るので
dylibの作者次第となります。
(Adobe系のdylibでも取得できない物もあります)
set theDylibPath to "/Library/Application Support/Adobe/Adobe Desktop Common/HDBox/HUM.dylib"
--要コマンドラインツール
try
set theCommand to ("otool -P \"" & theDylibPath & "\"") as text
set theDylibPlist to (do shell script theCommand) as text
on error
try
do shell script "xcode-select --install"
end try
end try
---不要なデータを削除して
set theDylibPlist to doReplace(theDylibPlist, "" & theDylibPath & ":", "")
set theDylibPlist to doReplace(theDylibPlist, "(__TEXT,__info_plist) section", "")
---テキストデータにする
set theCommand to ("echo \"" & theDylibPlist & "\" > /private/tmp/Dylib.plist") as text
do shell script theCommand
---XML形式のplistをバイナリに→この時にXMLが整形されるのでエラー避け
set theCommand to ("plutil -convert binary1 /private/tmp/Dylib.plist") as text
do shell script theCommand
---バージョンを取得する
set theCommand to ("defaults read \"/private/tmp/Dylib.plist\" \"CFBundleVersion\"") as text
set theDylibVer to (do shell script theCommand) as text
---ログ
log theDylibVer
return theDylibVer
#################################
to doReplace(theText, orgStr, newstr)
set oldDelim to AppleScript's text item delimiters
set AppleScript's text item delimiters to orgStr
set tmpList to every text item of theText
set AppleScript's text item delimiters to newstr
set tmpStr to tmpList as text
set AppleScript's text item delimiters to oldDelim
return tmpStr
end doReplace
| 固定リンク
「Mac Admin」カテゴリの記事
- hibernatemode(2023.08.15)
- open com.apple.preferences.configurationprofiles(2021.10.06)
- Asix USB Ethernet driver(2021.09.12)
- [Adobe] HUM.dylibのバージョンを取得する(2021.08.21)
- 【Mac Admin】ユーザーの管理者権限操作(2021.08.01)