如何从 Mac OS X 中的终端清除浏览器磁盘和内存缓存

如何从 Mac OS X 中的终端清除浏览器磁盘和内存缓存

我正在调试我和团队开发的 Adob​​e Flash 应用程序。每次我们更新应用程序时西南财团文件,我们需要清除浏览器缓存。我们还需要删除 AssetCaches 并设置一些其他内容。

因此,我有一个简单的 Bash 脚本,可以删除 Firefox 的文件缓存、Flash 的共享对象、Flex 的 AssetCache 和 Safari 的 Cache.db 文件。这一切都很好,只是不够彻底。Safari 仍然将之前加载的 SWF 文件保留在内存缓存中。我相信 Firefox 也在这样做,但只是间歇性的。这至少让调试变得有点头疼。

解决方法是使用每个浏览器的 GUI 来清除其磁盘和内存缓存。这只是一个糟糕的工作流程。如果我可以向 Bash 脚本中添加一两行代码并清除内存缓存以及其他任务,那就太棒了。我该怎么做?

答案1

你只需告诉浏览器你已清除缓存即可。 可以通过以下方式重新启动:

killall Safari
open -a Safari

或者通过使用 GUI 脚本清除缓存,例如以下 AppleScript:

tell application "Safari" to activate
tell application "System Events"
    tell application process "Safari"
        click (first menu item whose name is "Empty Cache…") of first menu of (first menu bar item whose name is "Safari") of first menu bar
    end tell
    keystroke return
end tell

您应该能够使用从您的 shell 脚本调用它osascript name.scpt,或者将其保存为应用程序open

相关内容