1つのオプションは、AppleScriptを使用することです。
$ osascript -e 'id of app "Finder"'
com.apple.finder
次のようなこともできます。
$ bundle=$(mdfind -onlyin / kMDItemKind==Application | grep -i "/Finder.app$" | head -1)
$ defaults read "$bundle/Contents/Info" CFBundleIdentifier
com.apple.finder
ただし、これらはどちらもかなり遅い(私のAirでは約0.05〜0.2秒)。より高速な、またはよりハッキングの少ないオプションはありますか?
osascript
解決策が好きです。ただし、これを実行するのに1秒に何回必要ですか?
defaults read
は正しい方法のようです(または、Obj-Cを介してLaunchServicesを照会します)-なぜ0.1秒遅いと考えるのですか?