В процессе копаний с сервисами мне попался на глаза plist com.apple.recentitems.plist, в котором хранятся последние 10 хостов, приложений, документов и серверов.
Решил сделать команду, которая выдаст 10 последних запущенных приложений, разделённых знаком ‘#’.
Использовал две программы –
Команда мозгодробительная:
$ plutil -convert xml1 -o - ~/Library/Preferences/com.apple.recentitems.plist | \ xpath '/plist/dict/key[text()="RecentApplications"]/following-sibling::*[1]/array/dict/string' | \ sed -e 's/<string>//g' -e 's/<\/string>/#/g'
Но сил на убирание “– NODE — ” уже не осталось, поэтому косметические изыски оставляю вам.
Вот, например, мои последние запущенные программы:
Mailplane#LittleSnapper#Woopra#fseventer#PlistEdit Pro# Speed Download#PListChecker#TextEdit#Archive Utility#TextMate#
Для экспериментов c XPath можно использовать программу
$ plutil -convert xml1 -o - ~/Library/Preferences/com.apple.recentitems.plist > 1.xml
А потом скормить полученный xml в программу и написать правила XPath:
Context Node: /plist/dict XPath: key[text()="RecentApplications"]/following-sibling::*[1]/array/dict/string