Szybko opróżnij kosz w Mac OS X.


37

Opróżnianie kosza w systemie OS X może być długim procesem, szczególnie jeśli masz wiele elementów (takich jak ja). To jest po 5 minutach:

wprowadź opis zdjęcia tutaj

Czy istnieje sposób na szybkie opróżnienie kosza lub przyspieszenie procesu?


2
I dlaczego w ogóle tak długo to trwa?
Thilo

2
@Thilo: Finder wykonuje dodatkową pracę polegającą na usuwaniu plików ze wszystkich urządzeń podłączonych do komputera, zastępując w razie potrzeby uprawnienia (przy użyciu podprocesu o nazwie Locum), statystyki plików.
Chealion

Odpowiedzi:


63

Jeśli zrobisz to przez terminal, prawie zawsze jest znacznie szybszy:

rm -rf ~/.Trash/*

Można jednak zauważyć, że nie spowoduje to usunięcia plików pojawiających się w Koszu z zewnętrznych dysków twardych, innych partycji itp. Pliki te są przechowywane w /Volumes/NAME_OF_DEVICE/.Trashes/USER_IDmiejscu, gdzie ID_UŻYTKOWNIKA jest Twoim identyfikatorem użytkownika. (Zwykle 501 w systemie jednego użytkownika) i będziesz musiał je usunąć za pomocą drugiego polecenia. ( sudo rm -rf /Volumes/*/.Trashes/501/*powinien zrobić dla nich wszystkich)

Jak zawsze podczas korzystania, rm -rfupewnij się, że ścieżka wpisana w terminalu jest poprawna lub możesz usunąć znacznie więcej, niż chcesz. (np. spacja przed * nigdy nie jest dobra)

Jeśli chodzi o to, dlaczego Finder trwa tak długo, Finder wykonuje dodatkową pracę polegającą na usuwaniu plików ze wszystkich urządzeń podłączonych do komputera, zastępując w razie potrzeby uprawnienia (za pomocą podprocesu o nazwie Locum), statystyki plików.


sudo rm -rf ~ / .Trash / * :)
atasoyh

Nie musiałem używać sudo.
Chev

Okej, tym razem zrobiłem. Zależy od uprawnień plików wyrzucanych do kosza :)
Chev

TL; DR: Potrójnie sprawdź swoją ścieżkę, gdy używasz re -rf, albo możesz pieprzyć się.
Ivan Durst,

21

Sprawdź, czy „Bezpieczne opróżnianie kosza” nie jest ustawione. Usuwa to pliki wiele razy, więc ich usunięcie trwa znacznie dłużej.

Ustawienie znajduje się w Preferencjach Findera na stronie Zaawansowane. Słyszałem, że czasami aktualizacja Leoparda przypadkowo ustawia tę opcję.


To było również rozwiązanie dla mnie:defaults write com.apple.finder EmptyTrashSecurely -bool false
Marius,

3

Jeśli musisz opróżnić Kosz zamontowanego woluminu podczas korzystania z Findera w trybie root (patrz http://twoj_macourguy.wordpress.com/2009/09/28/snow-leopard-root-finder/ ), wydaje się, że możesz ' t po prostu naciśnij Pusty kosz w folderze Kosz po naciśnięciu ikony (nawet upewniając się, że normalny Finder nie jest otwarty). Usłyszysz dźwięk opróżniania kosza, ale kosz nie zostanie opróżniony.

Ponadto podczas przeglądania Findera w trybie root nie widać ukrytych plików i folderów, nawet jeśli włączyłeś tę opcję na swoim koncie użytkownika.

Wydaje mi się, że po poleceniu Chealiona rm z gwiazdką na końcu nie działało. (Być może wynikało to z podwójnych cudzysłowów na końcach; być może potrzebował formatu odwrotnego ukośnika, jak pokazano poniżej.) Zamiast tego musiałem ręcznie dodać nazwę folderu; w moim przypadku:

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

(0 to użytkownik root)

Które odwzorowuje to, jak sądzę:

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

Symbol wieloznaczny gwiazdki nie działa może być uciążliwy, jeśli masz wiele plików i / lub folderów w koszu głównym zamontowanego woluminu.


UWAGA: Używanie Findera w trybie root jest zdecydowanie odradzane do ogólnego użytku; używaj go w szczególnych okolicznościach. W moim przypadku chciałem wykonać kopię zapasową i usunąć moje zarchiwizowane pliki Carbon Copy Cloner (utworzone w przyrostowych kopiach zapasowych), ponieważ samo kopiowanie i wklejanie folderu „_CCC Archives” do osobnej lokalizacji spowodowało mnóstwo błędów podczas używania Findera u normalnego użytkownika tryb. Nie miałem też dużo szczęścia z chown lub cp w sudo ... dlatego właśnie skorzystałem z Findera w trybie root.


Korzystam z systemu Mac OS X 10.6.8 Snow Leopard, tworząc kopię zapasową dysku przed zbliżającą się wersją Lion 10.7.


0

Używam następującej funkcji bash, aby szybko opróżnić kosz.

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

Można to dodać do pliku ~ / .bash_profile lub ~ / .bashrc. Instrukcje dotyczące edycji plików bash są tutaj .

Jedną z korzyści korzystania z funkcji bash, poza łatwym do zapamiętania, jest to, że nie będziesz grubo naciskać komendy rm -rf.

Uwaga: w zależności od zawartości kosza możesz opróżnić kosz tylko jako root - stąd sudo.

Możesz także zresetować EmptyTrashSecurely z powrotem do wartości true, jeśli chcesz.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.