rm a -i
et des -I
drapeaux pour confirmer avant chaque suppression. Dans le passé, certaines distributions les ont activées par défaut. C'est une terrible idée. Donnez à l'utilisateur trop de boîtes de dialogue de confirmation pour les opérations normales et il commencera à les confirmer habituellement. Cela déplace simplement l'exigence de «faire attention» (toujours un drapeau rouge) à une nouvelle boîte de dialogue plus agaçante. "Oui. Oui. Oui. Oui! OUI! Bon sang, stupide ordinateur, supprime simplement les fichiers OUI OUI OUI OUI - CRAP JE SIGNIFIE NON! NOOOOOOO!" Il s'agit du problème de dialogue "Oui, mais je voulais dire non". Cette réponse fournit une explication visuelle des raisons pour lesquelles les boîtes de dialogue de confirmation arrivent au mauvais moment.
Le genre d'erreur que vous décrivez est un glissement , "la réalisation d'une action qui n'était pas ce qui était prévu". L'utilisateur reconnaît généralement immédiatement l'erreur et sait exactement comment la corriger. Malheureusement, Unix ne donne pas la possibilité à l'utilisateur, rm supprime le fichier immédiatement. Tous les autres systèmes d'exploitation résolvent ce problème en permettant aux suppressions d'être annulées, au moins pendant un petit moment, par l'utilisation de la corbeille.
Il existe différents systèmes de corbeille pour Unix, et cette réponse regorge de suggestions .
La question est d'alias rm ou non d'alias rm. Avantages de l'aliasing rm ...
- Vous ne pouvez pas oublier d’utiliser l’alternative rm.
Contre l'aliasing rm ...
- Vous pourriez en venir à compter sur des systèmes qui ne l'ont pas.
- Peut causer des problèmes lorsque le disque est presque plein.
- Besoin d'une infrastructure pour vider périodiquement la poubelle.
- Vous devez être sûr de ne pas interférer avec le comportement attendu de rm dans les programmes.
- Pourrait ne pas émuler complètement rm.
Si vous suivez trop loin le premier argument, vous finissez par utiliser vi (pas vim, vi), csh (pas tcsh, csh) et d'autres utilitaires désuets car ils sont universellement disponibles. Pourtant, il existe un risque de sur-personnalisation de votre environnement. Je préfère emporter mes utilitaires avec moi et rendre cela aussi simple que possible. YMMV.
Deux et trois sont des problèmes techniques. Ils peuvent être résolus avec un travail de faucheuse intelligent qui vérifie la taille de la poubelle et nettoie périodiquement les choses, comme un tmpreaper . Cela peut être un travail cron, ou une version plus intelligente peut utiliser les diverses infrastructures d'événements du système de fichiers disponibles sur de nombreuses distributions Linux de bureau. Ce n'est pas simple et encore plus difficile à faire efficacement. Il vaut mieux trouver un système existant que d'essayer d'en créer un.
Le quatrième peut être traité en faisant de votre nouveau rm un alias de shell alias rm='trash'
, alors cela n'affectera pas les programmes.
Le cinquième est un problème que je laisse au lecteur de résoudre. rm n'a pas beaucoup de commutateurs.
zsh
oubash
) je préfère prendre l'habitude d'appuyer sur la touche de tabulation (pour déclencher l'auto-complétion) avant d'appuyer sur la touche retour