Maison > Article > Opération et maintenance > Comment rechercher et supprimer des fichiers ou des répertoires de manière récursive sous Linux ?
Cet article présente principalement comment rechercher récursivement des fichiers par Linux et comment supprimer de manière récursive des fichiers ou des répertoires par Linux.
Pour atteindre l'objectif de recherche et de suppression récursive de fichiers/répertoires sous Linux, nous pouvons utiliser la syntaxe suivante pour utiliser la commande find
et la commande rm
ensemble.
Ici, le signe + à la fin indique que plusieurs répertoires peuvent être lus en même temps.
$ find /start/search/from/this/dir -name "dirname-to-delete" -type d -exec /bin/rm -rf {} +
REMARQUE : La commande rm doit être utilisée avec prudence car c'est l'une des commandes les plus dangereuses utilisées sous Linux : vous pouvez accidentellement supprimer une clé répertoire système, provoquant une panne du système.
Dans l'exemple ci-dessous, nous allons rechercher un répertoire appelé files_2008 et le supprimer de manière récursive :
$ $find ~/Downloads/software -name "files_2008" -type d -exec /bin/rm -rf {} +
Vous pouvez également utiliser find
et xargs
;
Dans la syntaxe suivante, l'opération -print0
permet d'imprimer le chemin complet du répertoire sur la sortie standard, suivi d'un caractère nul :
$ find /start/search/from/this/dir -name "dirname-to-delete" -type d -print0 | xargs -0 /bin/rm -rf "{}"
En utilisant le même exemple ci-dessus, on a :
$ find ~/Downloads/software -name "files_2008" -type d -print0 | xargs -0 /bin/rm -rf "{}"
Dans cet article, nous vous montrons comment rechercher et supprimer des répertoires de manière récursive sous Linux. Nous espérons que cela sera utile aux amis dans le besoin !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!