AppleScript: пустой мусор без предупреждения

В настоящее время я пытаюсь написать appleScript, чтобы очистить корзину без отображения предупреждения.

Я использовал "пустую корзину", она отлично работает, если она была запущена как скрипт, но если я сохраню ее как приложение, появится предупреждение "Вы уверены, что хотите навсегда удалить элементы в Корзине?".

поэтому я не уверен, что добавить, чтобы отключить предупреждение при запуске в качестве приложения.

Я использую Mac OS X 10.10.5

благодарю вас

4 ответа

Предупреждение является предпочтением, но вы можете отключить его.

tell application "Finder"
    set warns before emptying of trash to false
    empty trash
end tell

Конечно, если вы хотите быть лучше, вы можете сохранить настройки и восстановить их в конце.

Следующее работает для меня без каких-либо подсказок:

tell application "Finder" to empty trash
      On idle 
tell application "Finder"
   set my count to count of items of the trash
   If my count > 1 then
     set warns before emptying of trash to false
     empty trash
   End if
end tell
 Return 60 
End idle

Предлагая альтернативу только ради радости, что она там есть:

do shell script "rm -R ~/.Trash"

для локальной корзины, с дополнительной очисткой файлов iCloud с использованием:

do shell script "rm -R ~/Library/Mobile\ Documents/com~apple~CloudDocs/.Trash"

К сожалению, нет никакого звукового эффекта с ними.

NB. Это мы протестировали на MacOS 10.13. Первая команда будет работать на более ранних системах. Второй будет зависеть от того, как ваша система интегрируется с iCloud, но будет иметь большее значение для пользователей Sierra и High Sierra, которые предпочитают хранить папки Desktop и Documents в iCloud.

Другие вопросы по тегам