2009-05-22 4 views
5

Я делаю приложение, которое включает в себя управление Safari из Applescript. Есть ли способ в Терминале (предпочтительный) или Applescript для удаления файлов cookie Safari. В основном я хочу, чтобы элемент «Сбросить Safari» из меню с помощью терминала. Есть ли способ, который может это сделать?Удалить файлы cookie Safari с терминала

ответ

4

Вы можете просто удалить Cookies.plist файл:

rm ~/Library/Cookies/Cookies.plist 

Или посмотрите на это: List & delete Safari cookies

+0

Угадай, как я нашел последнее: http://www.google.com/search?q=bash%20safari%20delete%20cookies – Gumbo

+0

Ссылка не работает. –

+0

Я нашел ссылку на нерабочую ссылку, где говорится об использовании '/ usr/libexec/PlistBuddy' для поиска и удаления сайтов из Cookies.plist. Однако это уже не актуально, поскольку файлы cookie теперь хранятся в формате 'binarycookies', так как Safari v5.1. – codersl

5

Reset Safari делает больше, чем просто удаление куки:

В основном я хочу в пункт «Сбросить Safari» из меню с помощью терминала.

Если вы хотите, чтобы полностью сбросить Safari от терминала, вы должны использовать (в зависимости от версии Safari команды могут меняться):

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 

И (немного не уверен насчет последнего один):

rm ~/Library/Safari/SearchProviders.plist.signed 
1

Вы можете сбросить Safari с помощью следующей AppleScript (GUI сценариев должен быть включен):

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