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?
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?
Odpowiedzi:
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
. srm
domyślnie korzysta z 35-przebiegowego algorytmu Gutmanna, ale -s
nadpisuje 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>
$
to ⇧⌦ (gdzie ⌦ to Mac do przodu usuń / Windows usuń). ⇧⌫ byłoby $
(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.
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.
⌘
+ ⌫
Jak właśnie to odkryłem?
⌘
+ ⌥
+, ⌫
aby natychmiast usunąć plik
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 .
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ę.