Activer une confirmation lors de la suppression de fichiers & Dossiers avec la commande rm

Anonim

La plupart des utilisateurs de la ligne de commande savent que la commande "rm" pour supprimer et supprimer des fichiers est assez puissante, capable de supprimer à peu près n'importe quel fichier imaginable dans le système de fichiers - qu'il doive être supprimé ou non. Une fois que vous avez ajouté des caractères génériques et sudo, rm et srm car exponentiellement plus puissants et potentiellement dangereux, les utilisateurs avancés qui souhaitent ajouter une couche de sécurité à la fonctionnalité rm peuvent activer une boîte de dialogue de confirmation avec les commandes rm et srm.Cela offre également un mécanisme de protection utile pour ceux qui apprennent la ligne de commande et souhaitent placer une couche de vérification entre la suppression instantanée des fichiers et leur exécution de commande.

Il y a deux parties dans cette astuce, la première consiste simplement à connaître le drapeau approprié pour activer et utiliser une confirmation avant qu'un fichier ou un dossier ne soit supprimé avec rm, et la seconde utilise un alias pour faire ce qui précède supprimer avec confirmation dans la nouvelle option par défaut pour la commande rm. Ces deux astuces fonctionnent sous Mac OS X, Linux et la plupart des autres variantes Unix. Elles sont donc largement indépendantes du système d'exploitation et fonctionnent également avec la puissante commande srm secure remove. Ceci est évidemment destiné aux utilisateurs plus avancés qui sont à l'aise avec la ligne de commande pour commencer, car l'utilisation de rm et srm ne sont pas des outils appropriés pour les novices.

Utilisation de la commande rm avec confirmation avant de supprimer des fichiers et des dossiers

La syntaxe pour activer une confirmation avant de supprimer des fichiers avec rm (ou srm) est simplement un indicateur -i, utilisé comme ceci :

rm -i filename

Par exemple, si vous deviez supprimer un fichier nommé "theSampleFile.zip" et vouliez avoir une confirmation avant la suppression de la commande, vous utiliseriez la syntaxe suivante :

rm -i theSampleFile.zip

Une fois que vous avez appuyé sur Entrée, il vous sera demandé si vous souhaitez ou non supprimer le nom de fichier en question, la commande répétant le fichier exact avant de le supprimer comme ceci :

% rm -i theSampleFile.zip supprimer theSampleFile.zip ? y

Appuyer sur 'y' et revenir répond par un 'oui' pour supprimer le fichier, et appuyer sur 'n' et sur la touche retour répond par un non et le fichier ne sera pas supprimé.

La syntaxe rm -i fonctionne même avec -r pour obtenir une confirmation avant de supprimer de manière récursive les répertoires et le contenu des fichiers des sous-dossiers contenus :

rm -ir /Exemple/Dossier/

Encore une fois, vous devrez émettre un y ou un n avant que la commande ne se termine pour chaque fichier individuel trouvé dans le répertoire.

Obtenir la même boîte de dialogue de confirmation avec srm ​​utilise également le drapeau -i :

srm -i /Example/file.zip

Encore une fois, vous utiliserez les touches y et n pour confirmer ou refuser la suppression des fichiers spécifiés.

Comment activer une confirmation de commande 'rm' par défaut avec un alias

Ouvrez votre .bash_profile ou .profile et vous pouvez créer un alias comme ceci pour changer la syntaxe par défaut 'rm' en 'rm -i' pour être la nouvelle valeur par défaut.

alias rm='rm -i'

Vous pouvez créer le même type d'alias avec srm ​​comme ceci :

alias srm='srm -i'

 Ajouter ces deux éléments à des lignes uniques dans le profil est suffisant, puis actualiser le shell permettra d'accéder aux deux à partir de bash, zsh, tcsh ou de tout autre shell utilisé.

Vous avez d'autres conseils avancés pour sauvegarder rm et srm sur la ligne de commande avant de supprimer des fichiers ? Faites le nous savoir dans les commentaires. Et si vous voulez juste .

Activer une confirmation lors de la suppression de fichiers & Dossiers avec la commande rm