36

Очистка корзины в OS X может быть долгим процессом, особенно если у вас много элементов (таких как я). Это через 5 минут:

Есть ли способ быстро очистить корзину или сделать процесс намного быстрее?

4 ответа4

60

Если вы делаете это через Терминал, это почти всегда значительно быстрее:

rm -rf ~/.Trash/*

Однако можно заметить, что это не приведет к удалению файлов, которые появляются в вашей Корзине, с внешних жестких дисков, других разделов и т.д. Эти файлы хранятся в /Volumes/NAME_OF_DEVICE/.Trashes/USER_ID где USER_ID - ваш идентификатор пользователя. (Обычно 501 в однопользовательской системе), и вам придется удалить их с помощью второй команды. (sudo rm -rf /Volumes/*/.Trashes/501/* должен сделать все это за вас)

Как всегда при использовании rm -rf убедитесь, что путь, который вы ввели в Терминал, верен, или вы можете удалить гораздо больше, чем хотите. (например, пробел перед * никогда не бывает хорошим)

Что касается того, почему Finder занимает так много времени, Finder выполняет некоторую дополнительную работу по удалению файлов со всех устройств, подключенных к компьютеру, при необходимости переопределяя разрешения (используя подпроцесс под названием Locum), статистику файлов и другие.

21

Убедитесь, что "Безопасная очистка мусора" не установлена. Это стирает файлы несколько раз, поэтому удаление занимает гораздо больше времени.

Этот параметр находится в настройках Finder на странице «Дополнительно». Я слышал, что иногда обновление Snow Leopard случайно устанавливает эту опцию.

3

Если вам нужно очистить корзину подключенного тома при использовании Finder в режиме root (см. Http://yourmacguy.wordpress.com/2009/09/28/snow-leopard-root-finder/), вы можете ' • просто нажмите кнопку «Очистить корзину» в папке «Корзина» после нажатия на значок (даже при условии, что обычный Finder не открыт). Вы услышите звук опорожнения мусора, но мусор не опустошается.

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

Следование команде Чилиона со звездочкой в конце, похоже, не сработало для меня. (Возможно, это произошло из-за двойных кавычек на концах; возможно, ему нужен формат обратной косой черты, как показано ниже.) Вместо этого мне пришлось вручную добавить имя папки; в моем случае:

sudo rm -rf /Volumes/Backup\ of\ Macintosh\ HD/.Trashes/0/_CCC\ Archives

(0 - пользователь root)

Какие карты на это, я думаю:

sudo rm -rf /Volumes/[VOLUME NAME]/.Trashes/0/[FOLDER OR FILE NAME]

Не работает подстановочный знак звездочка, если в корневой корзине подключенного тома много файлов и / или папок.


ВНИМАНИЕ: Использование Finder в корневом режиме определенно не рекомендуется для общего использования; используйте его в особых обстоятельствах. В моем случае я хотел сделать резервную копию и удалить мои заархивированные файлы Carbon Copy Cloner (созданные в инкрементных резервных копиях), так как простое копирование и вставка папки "_CCC Archives" в отдельную папку приводило к множеству ошибок при использовании Finder для обычного пользователя. Режим. Мне не особо повезло с chown или cp под sudo ... поэтому я прибег к использованию корневого режима Finder.


Я нахожусь на Mac OS X 10.6.8 Snow Leopard, делаю резервное копирование своего диска перед предстоящим выпуском 10.7 Lion.

0

Я использую следующую функцию bash, чтобы быстро очистить корзину.

emptytrash() {
    defaults write com.apple.finder EmptyTrashSecurely -bool false
    sudo rm -rf ~/.Trash/*
}

Это можно добавить в ваш ~/.bash_profile или ~/.bashrc. Инструкции по редактированию ваших файлов bash находятся здесь.

Одно из преимуществ использования функции bash, помимо того, что ее легко запомнить, заключается в том, что вы не будете толстым пальцем использовать команду rm -rf.

Обратите внимание, что в зависимости от содержимого вашей корзины вы можете очистить корзину только как root - отсюда и sudo.

Вы также можете сбросить EmptyTrashSecurely обратно в true, если хотите.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .