据我所知,在Mac OS X系统中,操作系统会记录最近打开的项目(文件)列表(单击Apple图标,然后单击" Recent Items"。但我想获取此列表以便可以将其用于其他目的。是否可以使用API查询此类项目,或者是否已将其实际存储在本地文件中(如果是,位置在哪里)?
由于
答案 0 :(得分:1)
它存储在:
/Users/username/Library/Preferences/com.apple.recentitems.plist
它是一个二进制属性列表文件,因此您可以在XCode中查看其内容,或在终端中使用/ usr / libexec / PlistBuddy,或使用属性列表API。
这是一个Bash脚本,它将按照alpha顺序转储所有最近的文档。
docCount=$(/usr/libexec/PlistBuddy -c "print RecentDocuments:MaxAmount" \
~/Library/Preferences/com.apple.recentitems.plist)
for (( i=0; i<docCount; i++ )); do
/usr/libexec/PlistBuddy -c "print RecentDocuments:CustomListItems:$i:Name" \
~/Library/Preferences/com.apple.recentitems.plist
done | sort
答案 1 :(得分:1)
根据http://www.alfredforum.com/topic/8122-use-alfred-to-observe-contents-of-all-my-files/
,El Cap已发生变化Pre-El Capitan,“〜/ Library / Preferences / com.apple.recentitems.plist”中有一个plist文件,其中包含您所追踪的数据。
在El Capitan中,您可以使用shell命令获取路径列表:
mdfind -onlyin $HOME '((kMDItemContentModificationDate > $time.now(-60m)) && (kMDItemContentModificationDate < $time.now()))' | grep -v /Library/
(这会排除“〜/ Library”中的文件。)