views:

509

answers:

3

I am making an application that involves controlling Safari from Applescript. Is there a way in the Terminal (preferred) or Applescript to erase Safari's cookies. Basically I want to the "Reset Safari" item from the menu using the Terminal. Is there a method that can do this?

+2  A: 

You could simply delete the Cookies.plist file:

rm ~/Library/Cookies/Cookies.plist

Or take a look at this: List & delete Safari cookies

Gumbo
Guess how I found the latter: http://www.google.com/search?q=bash%20safari%20delete%20cookies
Gumbo
+1  A: 

Reset Safari does more than just erasing the cookies:

Basically I want to the "Reset Safari" item from the menu using the Terminal.

If you would want to completely reset Safari from the terminal, you would use (depending on the Safari version the commands may vary):

rm ~/Library/Safari/History.plist

rm ~/Library/Safari/Downloads.plist

rm ~/Library/Safari/HistoryIndex.sk

rm ~/Library/Safari/LastSession.plist

rm ~/Library/Safari/TopSites.plist

rm -rf ~/Library/Caches/com.apple.safari

And (a little unsure about the last one):

rm ~/Library/Safari/SearchProviders.plist.signed
alexy13
A: 

You can reset Safari using the following AppleScript (GUI scripting must be enabled):

tell application "System Events"
tell process "Safari"
    set frontmost to true
    click menu item "Reset Safari…" of menu 1 of menu bar item "Safari" of menu bar 1
    --delay 1 --may be uncommented if needed
    click button "Reset" of window 1
end tell
end tell
Mason Rove