Commande pour effacer un fichier ou un répertoire sous Linux
Comment effacer un fichier ou répertoire en ligne de commande sous Linux
Pour effacer un fichier ou plusieurs fichiers sous Linux, la commande à utiliser est rm
Exemple :
sudo rm /chemin/fichier1 /chemin/fichier2 /chemin/fichier3
Lien vers le fichier : cliquez ici
Si vous voulez supprimer tous les fichiers d'un répertoire, allez dedans et la commande sera :
rm *
Lien vers le fichier : cliquez ici
Pour effacer un répertoire c'est la même commande à la différence que l'on va ajouter l'option -R pour agir de façon récursive, cad que l'on effacera également les sous-répertoires contenu dans le répertoire à effacer :
sudo rm -r /chemin/dossier1 /chemin/dossier2 /chemin/dossier3
Lien vers le fichier : cliquez ici
Si vous voulez effacer des fichiers ou répertoires qui se trouvent dans des sous-répertoires, il faut passer au préalable par la commande find
L'aide de la commande find se trouve par exemple sur https://linux.die.net/man/1/find
Par exemple si vous voulez effacer tous les répertoires qui commencent par temp
find /mon_repertoire_de_depart -type d -name temp* -exec rm -rf '{}' \;
Lien vers le fichier : cliquez ici
Pour effacer juste les fichiers qui commencent par temp
find /mon_repertoire_de_depart -name temp* -delete
Lien vers le fichier : cliquez ici
Pour effacer des fichiers qui commencent par localhost.2023 et qui se terminent par .log
Attention find retourne le chemin complet, donc vous devez mettre .* au début de vitre regex pour prendre en compte le chemin d'accès
find /chemin/vers/repertoire -type f -regextype egrep -regex '.*localhost.2023.*.log' -exec rm {} \;
Lien vers le fichier : cliquez ici
Pour effacer les fichier modifiés il y a plus d'un an dans /opt/kafka/kafka/logs sans aller au delà du premier répertoire
find /opt/kafka/kafka/logs/ -maxdepth 1 -mtime +360 -delete
Lien vers le fichier : cliquez ici
Notez que l'on peut faire un -print au lieu d'un -delete et compléter avec du regex
find /opt/kafka/kafka/logs/ -maxdepth 1 -regextype egrep -regex ".*/[a-z\-]+.log.[0-9]{4}-[0-9]{2}-[0-9]{2}-[0-9]{2}$" -mtime +2 -delete
Lien vers le fichier : cliquez ici
Pages Web
| Site Web | Description |
|---|---|
| Doc.ubuntu-fr.org | Comment supprimer un fichier (ou un dossier) ? |
| Doc.ubuntu-fr.org : rm | Les commandes de base en console : rm |
Article(s) suivant(s)
Article(s) précédent(s)