Jak ponownie przypisać klawisz Delete i Shift + Delete, aby usunąć i trwale usunąć plik w Mac OS X Lion?

11

Chciałbym usunąć i trwale usunąć plik w wyszukiwarce za pomocą del i shift + delete (styl Windows).

Czy jest jakiś sposób, aby odwzorować to w OS X lion?

Riyaz Mohammed Ibrahim
źródło
2
Dlaczego? Co jest złego w usuwaniu poleceń?
Abhi Beckert
1
Zobacz to pytanie SU. Zawsze możesz także użyć terminala i rm.
Linuxios,
@Linuxios Bardzo dobre znalezisko :)
Simon
Pewnie. SU zazwyczaj ma lepsze odpowiedzi na te pytania dla zaawansowanych użytkowników niż strony zorientowane na „konsumentów” (Ask Different, Ask Ubuntu itp.).
Linuxios,
1
SU jest przeznaczony dla czegoś bardziej zaawansowanego niż użytkownik końcowy. Zapytaj Różne ruchy między konsumentem a zaawansowanym użytkownikiem.
Linuxios,

Odpowiedzi:

7

Jeśli chcesz natychmiast usunąć pliki, możesz je skopiować, otworzyć Terminal lub iTerm, wpisać rm -r ‌i nacisnąć ⌘V.

Jeśli chcesz bezpiecznie usunąć pliki, aby nie można było ich odzyskać za pomocą aplikacji takiej jak DiskWarrior lub DataRescue, możesz użyć srm -srf. srmdomyślnie korzysta z 35-przebiegowego algorytmu Gutmanna, ale -snadpisuje pliki tylko jednym przejściem losowych danych.

Możesz także utworzyć taką usługę:

osascript -e 'on run argv
    set text item delimiters to linefeed
    tell application "Finder"
        display dialog "Delete the following files immediately?" & linefeed & linefeed & text items of argv
    end tell
end run' "$@"
[[ $? != 0 ]] && exit 0
rm -rf "$@"

Nie użyłem akcji Zapytaj o potwierdzenie, ponieważ nie można jej użyć do wyświetlenia ścieżek określonych jako argumenty, a pokazywane przez nią okna dialogowe nie są fokusowane na klawiaturze.

Nie można użyć usługi do usunięcia pliku, jeśli jego usunięcie wymagałoby uprawnień administratora.

Możesz nadać tej usłudze skrót klawiaturowy z Preferencji systemowych> Klawiatura> Skróty klawiaturowe> Usługi. Rejestratory skrótów nie pozwalają na wprowadzenie klawisza ⇧⌦ jako skrótu klawiaturowego, ale można najpierw nadać tej usłudze tymczasowy skrót, a następnie zamknąć okno Preferencje systemowe, a następnie uruchomić coś podobnego f=~/Library/Preferences/pbs.plist; plutil -convert xml1 $f; open -e $f, a następnie zmienić klucz równoważny z $:

<key>(null) - Delete Immediately - runWorkflowAsService</key>
<dict>
    <key>key_equivalent</key>
    <string>$&#xU007F;</string>
</dict>

$&#x007F;to ⇧⌦ (gdzie ⌦ to Mac do przodu usuń / Windows usuń). ⇧⌫ byłoby $&#x0008;(gdzie ⌫ to Mac usuń / backspace Windows). Format używany dla ciągów skrótów opisano w http://lri.me/keybindings.html .


Jeśli chodzi o przenoszenie plików ⌦ (Mac do przodu / Windows do usuwania) do kosza, możesz zmodyfikować listę właściwości Findera:

defaults write com.apple.finder NSUserKeyEquivalents -dict 'Move to Trash' '\U007F'
killall Finder

Jednak powoduje to również naciśnięcie ⌦ przeniesienie pliku do kosza podczas zmiany nazwy pliku.

Lri
źródło
Gdyby tylko twoja odpowiedź składała się tylko z tego ostatniego zdania ;-)
Asmus
po przeczytaniu ostatniego wiersza ... to podejście jest prawie bezużyteczne, chyba że mamy obejście polegające na użyciu delete przy zmianie nazwy pliku
Riyaz Mohammed Ibrahim
3

Jeśli dwustopniowy proces klawiatury jest akceptowalny, zawsze możesz:

+, aby przenieść plik do Kosza

następnie

+ +, aby opróżnić Kosz (z wyskakującym okienkiem potwierdzenia) lub

+ + +, aby opróżnić Kosz (bez wyskakującego okienka potwierdzenia).

Oczywiście spowoduje to również usunięcie wszystkich innych plików znajdujących się już w koszu.

Alternatywnie może pomóc coś takiego jak Trash X. Opis mówi:

Możesz go używać do natychmiastowego usuwania lub niszczenia plików i folderów bez wysyłania ich do kosza. Możesz go użyć do opróżnienia lub zniszczenia kosza tylko na wybranych dyskach. I oczywiście możesz go używać tak, jak kosz na śmieci, który zawsze miałeś na pulpicie.

binarybob
źródło
+ Jak właśnie to odkryłem?
Drazen Bjelovuk
1
+ +, aby natychmiast usunąć plik
Matt Sephton
2

Możesz wysłać pliki do kosza, a następnie kliknąć Finder-> Secure Empty Trash.

Możesz także utworzyć skrót klawiaturowy, aby ten proces był nieco szybszy, jak opisano w tym artykule .

Nie jest to dokładnie to, czego chcesz, ale wydaje się, że jest to najbliższe osiągnięcie bez potrzeby tworzenia czegoś za pomocą Automatora lub Keyboard Maestro .

David
źródło
Niezły artykuł. Co to jest Keyboard Maestro? (być może hiperłącze do twojej odpowiedzi, jeśli to możliwe)
Simon
Doskonałe, bardzo mile widziane :)
Simon,
Dodałem link . Jest to aplikacja, która pozwala tworzyć różnego rodzaju makra lub skróty klawiaturowe, aby robić rzeczy szybciej. Możesz tworzyć skróty do wykonywania bardzo skomplikowanych wieloetapowych czynności. Prawdopodobnie jest to jednak przesada, by kupić tylko to jedno zadanie.
David,
0

Zrobiłem prostą aplikację w kakao, która działa jak ikona śmieci, ale ma inne zachowanie, tj. upuszczenie pliku lub folderu na jego ikonę w doku powoduje jego trwałe usunięcie.

Napisałem też o tym post na blogu - Mac OS X: Shift + Delete

Oto link do aplikacji - DeleteMe

Podstawowa idea to - użyj: rm -rf , dokładnie to samo, co sugerowane w najczęściej głosowanej odpowiedzi, ale zaimplementowane w inny sposób ;-)

Aktualizacja

Teraz jest lepszy sposób na osiągnięcie funkcji „trwałego usunięcia”, jak określił Matt Sephton w komentarzu do tej odpowiedzi - wystarczy użyć polecenia + alt (opcja) + backspace . Dzięki za aktualizację.

Devarshi
źródło
2
Łatwiej jest po prostu nacisnąć Cmd + Alt + Delete / Backspace i.imgur.com/9pHcsHT.png
Matt Sephton