Menu Fermer

Commande rm Linux : Utilisations et exemples

La commande RM est utilisée pour supprimer des fichiers et des répertoires sous Linux en ligne de commandes. Ceci est l’une des commandes de base que vous devez connaître en tant qu’administrateur système Linux pour la gestion de fichiers et de répertoires.

Dans ce tutoriel, je vais vous montrer comment utiliser la commande RM pour supprimer des fichiers et des répertoires sous Linux.

Commande rm Linux : Utilisations et exemples

Comment utiliser la commande rm de Linux

La commande rm s’utilise dans un terminal.
Lors de la suppression aucune confirmation n’est demandée à moins que le fichier ne soit protégé en écriture.
Aucune sauvegarde ou déplacement vers une corbeille n’est faites, le fichier est directement supprimé du système de fichiers sans aucun moyen de récupération (sauf par des logiciels spécifiques).

Voici la syntaxe par défaut :

rm [OPTIONS]... FICHIER/REPERTOIRE...

Si aucune chemin spécifique n’est indiqué, rm tente de supprimer le fichier ou répertoire depuis l’emplacement en cours.

Elle fournit de multiples options doit voici la liste.

OPTIONSDESCRIPTION
-f, –force ignorer des fichiers et des arguments inexistants, jamais invite
-i Invite et demande de confirmation avant chaque suppression
-I Invite une fois avant de retirer plus de trois fichiers, ou en retirant de manière récursive; moins intrusif que -i, tout en donnant une protection contre la plupart des erreurs
–interactive[=WHEN] Invite selon quand: jamais, une fois (-i), ou toujours (-i); Sans quand, invite toujours
–one-file-systemLorsque vous retirez une hiérarchie récursive, sautez tous répertoire qui se trouve sur un système de fichiers différent de celui de l’argument de ligne de commande correspondant
–no-preserve-rootNe pas traiter ‘/’ spécialement
–preserve-root[=all] Ne pas supprimer ‘/’ (par défaut); avec ‘tout’, rejeter tout argument de ligne de commande sur un périphérique séparé de son parent
-r, -R, –recursive Supprimer les répertoires et leur contenu récursivement
-d, –dirSupprimer les répertoires vides
Les options de la commande rm
Comprenez bien, pour des raisons de sécurité, que le fichier n’est pas totalement écrasé du disque et qu’il est possible de le récupérer via des logiciels.
Si vous souhaitez supprimer définitivement un fichier, il faut se tourner vers d’autres utilitaires, consultez ce guide : Linux : supprimer des fichiers définitivement sans possibilité de récupération

Commande rm Linux : Utilisations et exemples

Supprimer un fichier

Voici l’utilisation la plus basique pour supprimer un fichier, on spécifie simplement le nom :

rm FICHIER

Par exemple pour supprimer le fichier /tmp/exemple.txt depuis n’importe quel emplacement :

rm /tmp/exemple.txt
Supprimer un fichier avec la commande rm

La commande rm n’affiche rien du tout.
Si vous désirez afficher les suppressions, utilisez l’option -v (verbose) :

rm -v employes_2020.txt
removed 'employes_2020.txt'

Comme expliqué dans l’introduction, si aucun chemin n’est indiqué rm supprime le fichier dans le répertoire en cours.
Dans cet exemple, on se trouve dans le home de l’utilisateur.
La commande rm tente de supprimer le fichier employes.txt dans ce répertoire, or il n’existe pas.
Il indique alors que la suppression n’est pas possible car aucun fichier ou répertoire existe.
On se déplace alors avec la commande cd dans /tmp et la suppression est possible car /tmp/employes.txt existe.

Supprimer un fichier avec la commande rm

Lorsque le fichier est introuvable rm retourne le message :

rm: cannot remove 'employes.txt': No such file or directory

Supprimer plusieurs fichiers

La commande rm accepte plusieurs noms de fichiers à la suite pour supprimer plusieurs fichiers à la fois.
Par exemple ci-dessous on supprime tous les fichiers employes :

rm employes_2020.txt employes_old.txt employes.txt
Supprimer plusieurs fichiers avec la commande rm

On peut aussi utiliser le caractère joker pour supprimer tous les fichiers avec une extension de fichiers.
Par exemple pour supprimer tous les fichiers textes avec l’extension .txt :

rm *txt
Supprimer plusieurs fichiers avec la commande rm

Enfin il est aussi possible de supprimer tous les fichiers qui commence par un nom spécifique.
A nouveau pour supprimer tous les fichiers qui commencent par employes :

rm employes*
Supprimer plusieurs fichiers avec la commande rm

Enfin pour retirer tous les fichiers qui comporte un mot spécifique, il suffit de l’encadrer avec le caractère joker.
Par exemple pour supprimer plusieurs fichiers qui comportent le mot *2020* :

rm *2020*
Supprimer plusieurs fichiers avec la commande rm

Supprimer un répertoire vide

rm peut supprimer un répertoire vide sans problème.
Toutefois, la syntaxe nécessite d’utiliser l’option -d :

rm -d /repertoire

Par exemple pour supprimer le répertoire superRepertoire :

rm -d superRepertoire
Supprimer un répertoire vide avec la commande rm

Bien entendu, on peut spécifier le chemin complet :

rm -d /tmp/superRepertoire

Notez que l’option -d est obligatoire. Si vous n’utilisez pas l’option -d, rm ne supprime pas le répertoire et retourne :

rm: cannot remove 'superRepertoire': Is a directory

Supprimer un répertoire non vide et toutes l’arborescence (récursif)

Lorsque vous désirez supprimer un répertoire non vide, rm vous l’interdit en affichant ce message :

rm: cannot remove 'demo/': Directory not empty

Pour supprimer un répertoire non vide, vous devez utiliser l’option -r (récursif) :

rm -r repertoire

Par exemple, pour supprimer le répertoire demo :

rm -r demo
Supprimer un répertoire non vide et toutes l'arborescence (récursif) en ligne de commandes

Supprimer un fichier ou répertoire avec confirmation

L’option -i indique à rm d’inviter l’utilisateur à chaque fichier donné avant de le retirer.
C’est une option utile si vous avez un doute sur l’utilisation de la commande rm notamment lors de l’utilisation du caractère joker.
Par exemple pour supprimer plusieurs fichiers avec une invite de confirmation :

rm -i fichier1 fichier2

Répondez y (yes) pour chaque fichier afin de les supprimer :

Supprimer un fichier ou répertoire avec confirmation dans un terminal

rm -rf : suppression avec récursivité et option force

Si le répertoire donné ou un fichier dans le répertoire est protégé en écriture, la commande rm vous demandera de confirmer l’opération. Pour supprimer un répertoire sans être invité, utilisez l’option -f :

rm -rf repertoire
rm -rf : suppression avec récursivité et option force
Veillez à utiliser l’option -f avec précaution car aucune vérification n’est effectuée par Linux.
Ainsi, si vous pouvez supprimer des fichiers ou répertoires systèmes et ainsi endommager le système.