rm muss -i
und -I
flags vor jedem entfernen bestätigen. In der Vergangenheit haben einige Distributionen diese standardmäßig aktiviert. Das ist eine schreckliche Idee. Geben Sie dem Benutzer zu viele Bestätigungsdialogfelder für den normalen Betrieb, und er beginnt, diese gewöhnlich zu bestätigen. Dies verlagert die Forderung nach "Vorsicht" (immer eine rote Fahne) auf einen neuen und nervigeren Dialog. "Ja. Ja. Ja. Ja! JA! Verdammt, dummer Computer, lösche einfach die Dateien. Dies ist das "Ja, aber ich meinte nein" -Dialogproblem. Diese Antwort bietet eine visuelle Erklärung, warum Bestätigungsdialogfelder zum falschen Zeitpunkt angezeigt werden.
Die Art von Fehler, die Sie beschreiben, ist ein Ausrutscher , "die Ausführung einer Handlung, die nicht das war, was beabsichtigt war". Der Benutzer erkennt den Fehler normalerweise sofort und weiß genau, wie er behoben werden kann. Leider gibt Unix dem Benutzer nicht die Möglichkeit, rm löscht die Datei sofort. Jedes andere Betriebssystem löst dieses Problem, indem es zulässt, dass Löschvorgänge mithilfe des Papierkorbs zumindest für kurze Zeit rückgängig gemacht werden.
Es gibt verschiedene Müllsysteme für Unix, und diese Antwort steckt voller Vorschläge .
Die Frage ist nach Alias rm oder nicht nach Alias rm. Vorteile des Aliasing von rm ...
- Man kann nicht vergessen, die Alternative rm zu nutzen.
Nachteile für das Aliasing von rm ...
- Sie könnten sich auf Systeme verlassen, die es nicht haben.
- Kann Probleme verursachen, wenn die Festplatte fast voll ist.
- Benötigen Sie eine Infrastruktur, um den Papierkorb regelmäßig zu leeren.
- Darauf achten, dass das erwartete Verhalten von rm in Programmen nicht beeinträchtigt wird.
- Kann rm nicht vollständig emulieren.
Wenn Sie dem ersten Argument zu weit folgen, verwenden Sie vi (nicht vim, vi), csh (nicht tcsh, csh) und andere veraltete Dienstprogramme, da diese allgemein verfügbar sind. Dennoch besteht die Gefahr einer Überanpassung Ihrer Umgebung. Ich nehme meine Dienstprogramme lieber mit und mache es mir so einfach wie möglich. YMMV.
Zwei und drei sind technische Probleme. Sie können mit einem cleveren Schnitter-Job gelöst werden, der die Größe des Mülls überprüft und die Dinge regelmäßig aufräumt, ähnlich wie bei einem billigen . Dies kann ein Cron-Job sein, oder eine cleverere Version kann die verschiedenen Dateisystem-Ereignisinfrastrukturen nutzen, die auf vielen Desktop-Linux-Distributionen verfügbar sind. Dies ist nicht einfach und noch schwieriger effizient zu erledigen. Es ist besser, ein vorhandenes System zu finden, als zu versuchen, ein eigenes zu erstellen.
Das vierte Problem kann behoben werden, indem Sie Ihren neuen rm zu einem Shell-Alias machen alias rm='trash'
. Dann hat dies keine Auswirkungen auf Programme.
Das fünfte Problem überlasse ich dem Leser. RM hat nicht viele Schalter.
zsh
oderbash
) würde ich lieber die Tabulatortaste drücken (um die automatische Vervollständigung auszulösen), bevor