Guides

Comment supprimer des fichiers et des répertoires dans le terminal Linux

Les commandes rm et rmdir suppriment des fichiers et des répertoires sur Linux, macOS et autres systèmes d’exploitation de type Unix. Ils sont similaires aux commandes Windows et DOS deltreo . Ces commandes sont très puissantes et comportent de nombreuses options.

Il est important de noter que les fichiers et répertoires supprimés à l’aide de rm et rmdir ne sont pas déplacés vers la corbeille. Ils sont immédiatement supprimés de votre ordinateur. Si vous supprimez accidentellement des fichiers à l’aide de ces commandes, le seul moyen de les restaurer est à partir d’une sauvegarde.

Comment supprimer des fichiers avec rm

Le cas le plus simple est de supprimer un seul fichier dans le répertoire courant. Entrez la commande rm, un espace, puis le nom du fichier que vous souhaitez supprimer.

rm fichier_1.txt

Si le fichier ne se trouve pas dans le répertoire de travail actuel, indiquez un chemin d’accès à l’emplacement du fichier.

rm./path/to/file/file/file_1.txt

Vous pouvez transmettre plus d’un nom de fichier à rm. Cela supprime tous les fichiers spécifiés.

rm fichier_2.txt fichier_3.txt

Les caractères génériques peuvent être utilisés pour sélectionner des groupes de fichiers à supprimer. L’astérisque ( ) représente plusieurs caractères et l’astérisque ( ) représente un seul caractère. Cette commande supprimerait tous les fichiers image png dans le répertoire de travail actuel.

rm * .png

Cette commande supprimera tous les fichiers qui ont une seule extension de caractère. Par exemple, cela supprimerait File.1 et File.2, mais pas File.12.

rm *.?

Si un fichier est protégé en écriture, vous serez invité à le supprimer. Vous devez répondre avec Sony appuyez sur “Entrée”.

Pour réduire le risque d’utiliser le caractère générique rm, utilisez l’option -i (interactive). Cela vous oblige à confirmer la suppression de chaque fichier.

rm -i * .dat

L’option -f (force) est l’opposé de l’option interactive. Il ne demande pas de confirmation même si les fichiers sont protégés en écriture.

rm -f nom de fichier

Comment supprimer des répertoires avec rm

Pour supprimer un répertoire vide, utilisez l’option -d (répertoire). Vous pouvez utiliser des caractères génériques (* et?) Dans les noms de répertoire de la même manière que pour les noms de fichiers.

rm -d répertoire

Si plus d’un nom de répertoire est fourni, tous les répertoires vides spécifiés sont supprimés.

rm -d répertoire1 répertoire2 / chemin / vers / répertoire3

Pour supprimer les répertoires qui ne sont pas vides, utilisez l’option -r (récursive). Pour être clair, cela supprime les répertoires et tous les fichiers et sous-répertoires qu’ils contiennent.

rm -r répertoire1 répertoire2 répertoire3

Si un répertoire ou un fichier est protégé en écriture, vous serez invité à confirmer la suppression. Pour supprimer les répertoires qui ne sont pas vides et pour supprimer ces invites, utilisez ensemble les options -r (récursive) et -f (force).

rm -rf répertoire

Il faut faire attention ici. Une erreur avec la commande rm -rf peut entraîner une perte de données ou un dysfonctionnement du système. C’est dangereux et la prudence est la meilleure politique. Pour comprendre la structure des répertoires et les fichiers qui seront supprimés par la commande rm -rf, utilisez la commande tree.

Utilisez apt-get pour installer ce paquet sur votre système si vous utilisez Ubuntu ou une autre distribution basée sur Debian. Sur les autres distributions Linux, utilisez plutôt l’outil de gestion des packages de votre distribution Linux.

sudo apt-get arborescence d’installation

L’exécution de la commande tree produit un diagramme simple à comprendre de la structure des répertoires et des fichiers sous le répertoire à partir duquel elle est exécutée.

arbre

Vous pouvez également fournir un chemin d’accès à la commande tree pour démarrer l’arborescence à partir d’un autre répertoire du système de fichiers.

chemin de l’arborescence / vers / vers / répertoire

La commande rm a également les options –one-filesystem, –no-preserve-root, –preserve-root, mais elles ne sont recommandées qu’aux utilisateurs avancés. Si vous gâchez quelque chose, vous pouvez accidentellement supprimer tous les fichiers de votre système. Consultez la page de manuel de la commande pour plus d’informations.

Comment supprimer des répertoires avec rmdir sous Linux

Il existe une autre commande, appelée rmdir, que vous pouvez utiliser pour supprimer des répertoires. La différence entre rm et rmdir est que rmdir ne peut supprimer que les répertoires vides. Il ne supprimera jamais les fichiers.

Le cas le plus simple est de supprimer un seul répertoire vide. Comme avec rm, vous pouvez transmettre plusieurs noms de répertoire à rmdir, ou un chemin vers un répertoire.

Supprimez un seul répertoire dans le répertoire courant en passant son nom à rmdir:

répertoire rmdir

Supprimez plusieurs répertoires en passant une liste de noms à rmdir:

rmdir répertoire1 répertoire2 répertoire3

Supprimez un répertoire qui ne se trouve pas dans le répertoire actuel en spécifiant le chemin complet de ce répertoire:

rmdir / chemin / vers / répertoire

Si vous essayez de supprimer un dossier qui n’est pas vide, rmdir vous donnera un message d’erreur. Dans l’exemple suivant, rmdir supprime silencieusement le répertoire des clients mais refuse de supprimer le répertoire des projets car il contient des fichiers. Le répertoire des projets est laissé tel quel et les fichiers qu’il contient sont intacts.

Lorsque rmdir donne une erreur “Répertoire non vide”, il arrête de traiter les répertoires qui lui ont été passés sur la ligne de commande. Si vous lui avez demandé de supprimer quatre répertoires et que le premier contient des fichiers, rmdir vous donnera le message d’erreur et ne fera rien d’autre. Vous pouvez le forcer à ignorer ces erreurs avec l’option –ignore-fail-on-non-empty pour traiter d’autres répertoires.

Dans l’exemple suivant, deux dossiers ont été transmis à rmdir, à savoir work / reports et work / quotes. L’option –ignore-fail-on-non-empty a été incluse dans la commande.

Le dossier de travail / rapports contient des fichiers, rmdir ne peut donc pas le supprimer. L’option –ignore-fail-on-non-empty force rmdir à ignorer l’erreur et à accéder au dossier suivant à traiter, à savoir work / quotes. Il s’agit d’un dossier vide et rmdir le supprime.

C’était la commande utilisée.

rmdir –ignore-fail-on-non-empty work / reports / work / quotes

Vous pouvez utiliser l’option -p (parents) pour supprimer un répertoire et aussi pour supprimer ses répertoires parents. Cette astuce fonctionne car rmdir commence par le répertoire de destination, puis sauvegarde vers le parent. Ce répertoire devrait maintenant être vide, donc il peut être supprimé par rmdir, et le processus se répète en retournant au chemin rmdir a été donné.

Dans l’exemple suivant, la commande passée à rmdir est:

rmdir -p travail / factures

Les factures et les répertoires de travail sont supprimés, comme demandé.

Que vous utilisiez Bash ou tout autre shell, Linux fournit des commandes flexibles et puissantes pour vous permettre de supprimer des répertoires et des fichiers directement à partir de la ligne de commande du terminal.

Certaines personnes préfèrent avoir un flux de travail qui tourne autour du terminal. D’autres n’ont peut-être pas d’autre choix en la matière. Ils peuvent travailler sur des serveurs sans interface graphique installée ou dans une session à distance sur un système sans tête comme un Raspberry Pi. Ces commandes sont parfaites pour ce groupe de personnes.

Mais quel que soit le type de flux de travail que vous préférez, ces commandes se prêtent bien à être incluses dans des scripts shell. Si un script est déclenché par une tâche cron, il peut aider à automatiser les tâches de nettoyage de routine telles que la purge des fichiers journaux indésirables.

Si vous recherchez ce cas d’utilisation, rappelez-vous la puissance de ces commandes , testez tout soigneusement et conservez toujours une sauvegarde Linux récente.

Articles Similaires

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba