Non ho familiarità con Alfred, tuttavia, per quanto riguarda AppleScript e ottenere il nome di un'icona del pacchetto di applicazioni in genere non è codificato, quindi non è che tu possa ottenere il suo percorso con un singolo comando. Inoltre, il valore di CFBundleIconFile
può essere con e senza l'estensione .icns
, quindi quando crei il percorso completo dell'icona del pacchetto di applicazioni dovrai tenerne conto mentre scrivi il tuo codice.
Ad esempio, utilizzando /Applications/Calculator.app
incorporato la /Applications/Calculator.app/Contents/Info.plist
mostra che il file Icon è "Calculator.icns" ma non fornisce il percorso, anche se di solito sarà all'interno della cartella Risorse all'interno del pacchetto di applicazioni e in questo caso è, /Applications/Calculator.app/Contents/Resources/Calculator.icns
. Quindi dovresti ottenere il valore di CFBundleIconFile
dal file .plist
dell'app e controllare se ha o meno l'estensione .icns
e testare per vedere se si trova nella posizione predefinita, che normalmente è ma non sempre .
Quindi in Terminale devi eseguire una query utilizzando defaults
, ad esempio:
defaults read /Applications/Calculator.app/Contents/Info.plist CFBundleIconFile
In AppleScript puoi impostare i risultati su una variabile e andare da lì, ad esempio:
set appIcon to do shell script "defaults read /Applications/Calculator.app/Contents/Info.plist CFBundleIconFile"
Restituisce: Calculator.icns
Dove,
defaults read /Applications/Utilities/Terminal.app/Contents/Info.plist CFBundleIconFile
Resi: Terminal
Eppure l'FQP è /Applications/Utilities/Terminal.app/Contents/Resources/Terminal.icns