Постоянное удаление файлов в Mac OS

42578
Jonik

Некоторое время назад, будучи относительно новым пользователем Mac OS X, я с удивлением узнал, что вы не можете легко удалить файлы . Непосредственно, то есть, не перемещая их сначала в корзину. В Windows и Linux это, очевидно, легко сделать, но на Mac это не так.

Я заметил это при попытке очистить файлы с карты памяти USB - удаление файлов («переместить в корзину») не освобождает место; это происходит только после очистки всей системной корзины. Не особенно удобно! (Кажется, глупо очищать весь мусорный бак только для того, чтобы освободить место на USB-накопителе. Там могут быть гигабайты содержимого, и этот вид не справляется со своей задачей - что, если вам действительно нужно что-то восстановить из мусор когда-нибудь.)

Итак, как вы можете обойти это ? Вы купили стороннее приложение, такое как RAW Trash, за $ 16,95 только для удаления файлов, или вы старательно очищаете корзину, когда это необходимо? Или я что-то пропустил? Кроме того, можете ли вы убедить меня в том, что на самом деле так и должно быть - что пользователи не могут легко возиться с файловой системой? :)

21
Вы искали ярлык `⌘ + ⌥ + ⌫` (Command + Option + Delete)? Daniel 5 лет назад 0

10 ответов на вопрос

28
jtbandes

Поскольку так много людей хотят этого, я просто создал Службу для Snow Leopard, которая называется « Немедленно удалить». . Он отображается в меню «Сервисы» и в контекстном меню в Finder.

Вы можете скачать его с GitHub . Распакуйте .zipархив и переместить в результате « Delete Immediately.service» к Услугам папки в библиотеке папки ~/Library/Services/. Вам может потребоваться выйти из системы и снова войти в нее (и / или включить ее в разделе «Услуги» в настройках клавиатуры), чтобы система распознала службу.

Я бы также предложил проверить READMEфайл на главной странице GitHub. И если вы хотите внести свой вклад в код, локализовать его или сделать иконку, не стесняйтесь!

Context menu

Services menu

Shiney. Вы также можете привязать сочетание клавиш к этой службе: «В меню« Приложение »выберите« Службы »/« Настройки служб ». Откройте« Системные настройки »/« Клавиатура »,« Сочетания клавиш »/« Службы ». Выберите службу, нажмите клавишу« Ввод », а затем нажмите выбранную комбинацию сочетаний клавиш» (из http://www.gingerbeardman.com/services/) dbr 14 лет назад 4
Очень мило спасибо! Это работает только на 10.6? (Я все еще буду на Леопарде некоторое время.) Jonik 14 лет назад 0
Пока он работает только на 10.6, я не очень знаком с тем, как работают сервисы на 10.5 (они не отображаются в контекстном меню, и написать плагин для контекстного меню для 10.5 немного сложнее). jtbandes 14 лет назад 1
И, Джоник, я бы порекомендовал вам обновить до 10.6, если ваше оборудование позволяет (то есть у вас Intel Mac). Даже если вы не получите много ускорений, если у вас нет 64-битной машины, как у меня, незначительные улучшения определенно стоят низкой цены. jtbandes 14 лет назад 0
[Да, я обновлю, как только получу. :) Только что я совсем недавно купил Mac mini, который все еще шел с Leopard, и, вероятно, пройдет немного времени, прежде чем я получу Snow Leopard через http://www.apple.com/macosx/uptodate/. Кстати, я надеюсь, что какое-то решение этой досады будет найдено до того, как я обновлюсь: http://superuser.com/questions/31925/stop-play-pause-button-opening-itunes-in-snow-leopard] Jonik 14 лет назад 0
Наконец-то дошли руки до тестирования этого, и оно действительно работает гладко! (Так что большое +1 от меня тоже; я оставлю метод `rm` в качестве принятого ответа, так как установка сторонних инструментов для этого не должна быть обязательной ИМХО ...) Ваше« Немедленное удаление »может в конечном итоге поставить Вы знаете, что создатели RAW Trash разорились. : D Назначение сочетания клавиш для службы делает это еще лучше. Некоторые отзывы об инструкциях: 1) Папка Services в ~ / Library может не существовать (не на моем компьютере), поэтому, возможно, упомяните, что вам может понадобиться ее создать. 2) Есть ли простой способ установки в масштабе всей системы? Jonik 14 лет назад 0
Есть ли способ назначить Shift + Del в качестве ярлыка для этого сервиса? Похоже, что Системные настройки просигнализируют о любой комбинации с участием Del. haridsv 12 лет назад 1
GitHub изменил их интерфейс, и я не могу найти вкладку загрузок. Не могли бы вы положить его где-нибудь еще? kentcdodds 11 лет назад 0
@kentcdodds Печально, что GitHub убил вкладку загрузок! Я добавил zip-файл в сам репозиторий, чтобы вы могли напрямую загрузить его оттуда. Смотрите ссылку в вики. Дайте мне знать, если это работает! jtbandes 11 лет назад 0
@jtbandes Я не вижу никаких tar / zip файлов в хранилище ... kentcdodds 11 лет назад 0
Он находится в корневом каталоге с именем `Delete Immediately.service.zip`. Я также разместил ссылку на вики-странице. jtbandes 11 лет назад 0
Если кто-то любезно поддержит этот комментарий, у меня будет достаточно репутации, чтобы добавить свой собственный ответ со скриншотами. Я бы порекомендовал Trash Without, который стоит $ 0,99, но имеет удобные опции, такие как добавление кнопки в Finder. См .: http://itunes.apple.com/us/app/trash-without/id547583082?l=ru&ls=1&mt=12. Tyler Collier 10 лет назад 0
Я закончил тем, что добавил свой ответ на родственный сайт здесь: http://apple.stackexchange.com/questions/43577/can-finder-delete-a-file-directly-and-bypass-moving-it-to-the- мусор / 103299 # 103299 Tyler Collier 10 лет назад 0
22
Daan

Я не очень доволен тем, как Mac OS X справляется с этим. Если я действительно хочу что-то удалить, особенно с USB-накопителей, я обычно запускаю Терминал и rmфайлы вручную.

8
GeneQ

Безконечный способ решения этой загадки - использовать следующее заклинание, чтобы успокоить богов Apple, вот так:

Выберите файл, которым нужно пожертвовать, с последующим чтением:

⌘ Удалить

⌘ ⇧ ⌥ ⌫

Это отправит файл в корзину, а затем удалит весь мусор, таким образом, следует отправить жертву (и все другие мусорные предметы) в забвение.

Хорошо, спасибо! Прямо сейчас я не могу подтвердить, работает ли это, но если так, это именно то, что я хотел :) Jonik 14 лет назад 0
Для этого нужно сначала удалить файл, а затем очистить корзину. Хотя это полезное сочетание клавиш, на самом деле оно не решает проблему невозможности простого удаления выбранных файлов. Daan 14 лет назад 11
Договорились Даан. Это не идеально. Но использование rm в Терминале также не идеальный и довольно не-Mac способ работы. Нашему другу Джонику придется взвесить все за и против, я думаю. ;-) GeneQ 14 лет назад 1
Спасибо за разъясняющие комментарии! Так что да, это не совсем то, что я хотел в конце концов, но приятно знать, что ярлык для очистки мусора. Из опций, представленных до сих пор, я бы, вероятно, пошел с rm в командной строке, хотя я согласен с GeneQ, что это довольно не-Mac способ для такой задачи. Jonik 14 лет назад 0
-1 за вводящий в заблуждение ответ. Что если пользователь не хочет очищать свой мусор? hasen 14 лет назад 9
-1 также в оригинальном вопросе упоминается, что очистка системного мусора «Не особенно удобно!», Что делает этот ярлык .. dbr 14 лет назад 3
4
dbr

Чтобы удалить конкретный файл, не проходя через корзину.

  • открыть терминал
  • введите rm(с завершающим пробелом), или rm -rесли вы планируете удалить каталог
  • перетащите файл в окно терминала, которое вводит полный путь к удаленному файлу
  • нажмите ввод

Сервисное решение jtbandes «Немедленно удалить» гораздо более элегантно, но для «терминального способа» не требуется никакого дополнительного программного обеспечения (что хорошо при работе на машинах, которые вы не используете регулярно)

+1, спасибо за перетаскивание на кончик терминала Jonik 14 лет назад 0
Спасибо за полезный совет, основанный на вашем предложении, я сделал простое приложение какао, вот ссылка: http://daemonconstruction.blogspot.in/2013/01/mac-os-x-shift-delete.html Devarshi 11 лет назад 0
@Miraaj Рад, что ответ был полезным! Ссылка на скачивание в вашем блоге повреждена (ссылка содержит следующее предложение, а не URL) dbr 11 лет назад 0
@dbr .. спасибо, что сообщили мне .. Я обновил это сейчас :-) Devarshi 11 лет назад 0
2
Andrew J. Brehm

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

Вы также можете использовать rm -rf, чтобы удалить конкретную корзину. Мусорная корзина представляет собой скрытую папку с именем .Trash в корне соответствующего тома или каталога.

И да, я думаю, что так и должно быть. Пользователи не должны иметь возможность удалять файлы слишком быстро с помощью Finder. Файлы должны быть восстановлены из корзины.

Обратите внимание, что если пространство в Корзине не учитывается как используемое пространство, файлы в Корзине будут перезаписаны с течением времени и больше не могут быть восстановлены. Таким образом, выбор на самом деле лежит между хранением файлов в Корзине и переносом пробелов или отсутствием хранения файлов в Корзине и получением большего свободного места. Комбинации между ними непредсказуемы для обычного пользователя. Andrew J. Brehm 14 лет назад 0
Это хороший совет, но я думаю, что неосторожному / неопытному человеку следует предельно ясно дать понять, что rm -rf нужно использовать крайне осторожно; он удалит все данные в папке, которую вы передаете ему, включая папку, без подтверждения. Если в эту команду передается системная папка, вы можете нанести достаточно ущерба, чтобы потребовать переустановки операционной системы (хотя разрешения должны помешать вам уничтожить систему, я стараюсь не полагаться на них). Babu 14 лет назад 4
Почему отрицательный голос ??? Andrew J. Brehm 11 лет назад 0
2
avstrallen

Отчасти красота Mac OS X заключается в том, что, хотя для неопытных пользователей очень просто найти свой путь и выполнить работу, опытные пользователи могут «поиграть с системой», используя возможности базового Unix через командную оболочку (т.е. Terminal.app).

@Leauki прав в использовании команды unix rm, но БУДЬТЕ ОЧЕНЬ ОСТОРОЖНЫ, особенно если использовать -rfфлаги! Сети безопасности нет, и вы можете нанести серьезный ущерб, вплоть до удаления собственной корневой файловой системы!

Я не рекомендую использовать абсолютные пути rm, а cdв директорию, с которой вы хотите работать сначала, а затем, например:

rm -rf ./<subpath to file to delete>где ./в пути заставляет rmработать только в каталоге, в котором вы находитесь в настоящее время.

rm -rf bin - ой, я забыл cd, но я не в / так не такой большой ой. rm -rf / bin - упс, я забыл набрать. так что ОЙ! (независимо от того, где я CD)! Так что я не согласен. Dennis Williamson 14 лет назад 5
@Dennis - да, если вы забудете напечатать период, вы находитесь в мире боли! Я полагаю, что это главная причина, по которой Apple не хочет, чтобы их обычный пользователь делал подобные вещи, и, следовательно, функциональность корзины, с которой сталкивался OP. Итак, я согласен с вашим несогласием, но похоже, что вы и я - опытные * nixers, которые уважают командную оболочку как потенциально опасное место, которым мы ее знаем. Я только предполагал, что менее опытные пользователи приобретут привычку, прежде чем использовать потенциально опасные команды. avstrallen 14 лет назад 0
Благодарю. Я согласен, что это достаточно легко сделать в командной строке. Но в этом случае мне не особенно нравится прибегать к этому ... В Mac OS вам не нужно использовать командную строку для обычных вещей конечного пользователя, IMHO и освобождения достаточно места на USB-накопителе. Jonik 14 лет назад 0
Я согласен с @GeneQ и @Daan - но у меня есть методологический обходной путь: я ничего не помещаю в корзину, пока не узнаю наверняка, что с ней покончено, а затем сразу же очищаю корзину каждый раз ... проблема решена. avstrallen 14 лет назад 0
1
fatboy

Я придумал следующий appleScript, который я должен был изменить с помощью Keyboard Maestro, так что теперь он работает как в Windows. Когда элемент выбран в Finder, shift del запустит скрипт, который отобразит диалоговое окно с предупреждением о постоянном удалении элемента с его именем. Нажатие ОК завершает удаление.

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

tell application "Finder" set myPosixPath to selection as text --returns an alias path set myPosixPath to POSIX path of myPosixPath --set it to posix style path with backslashes  --identify whether it's a file or folder. Only for the warning dialog. if character -1 of myPosixPath is "/" then set itemType to "folder" else set itemType to "file" end if  --display a warning display dialog myPosixPath & "  This cannot be undone." with title "Really permanently delete this " & itemType & "?" do shell script "rm -rf " & quoted form of myPosixPath --execute a shell script to delete the item end tell 
для всего того, что Mac OS X еще не предоставляет, есть Keyboard Maestro. Kaushik Gopal 12 лет назад 0
0
Bruce McLeod

Я думаю, что это сделано для согласованности и безопасности пользователей. Я думаю, что лучше хранить файлы дольше, чем требуется, и использовать пространство, вместо того, чтобы бездельничать и удалять их сразу.

Это немного раздражает, когда вы работаете с USB-флешками и перемещаете их на Windows-машину и идете ... где все мое пространство ... и что это за раздражающая папка .trash.

0
neoneye

Используйте muCommander для удаления файлов (это бесплатно)

Вместо использования Finder, возможно, используйте другой файловый менеджер, такой как muCommander. Он может удалять файлы и перемещать файлы в корзину. Это гораздо безопаснее, чем вставлять «rm -rf» в Терминал, где вы рискуете вставить неправильные команды, что приведет к необратимым повреждениям.

0
Simon

Если вы действительно хотите использовать стороннее приложение, гораздо более дешевой альтернативой RAW Trash, которую вы упомянули, является File Shredder . (US Mac App Store $ 3,99)

Он предлагает несколько способов безопасного удаления файлов:

  • Однократное нормальное удаление, которое просто перезаписывает ваши файлы.
  • Семидесятипроходный DoD-совместимый проход гарантирует, что большинство людей не смогут получить доступ к вашим файлам.
  • 35-проходное удаление Gutmann гарантирует, что ваши файлы действительно исчезнут, когда вы их удалите.

Это может быть немного излишним для большинства людей, хотя, если вы ищете более дешевый способ, чем RAW Trash, для безопасного удаления файлов FileShredder выполняет свою работу.

Похожие вопросы