Je souhaite supprimer tout fichier ressemblant à wordpress-891.sql
du répertoire actuel (pas à l'intérieur des sous-répertoires).
rm wordpress-*.sql
fera-t-il l'affaire ou supprimera-t-il également les correspondances des sous-répertoires?
Le globing normal *
n'est pas récursif, pas plus que rm
.
Si un nom de répertoire correspond, il ne sera pas supprimé - vous avez besoin de l'indicateur -r
pour supprimer un répertoire.
Vous pouvez donc le faire en toute sécurité si vous êtes certain de vouloir supprimer ces fichiers.
Vous pouvez également rendre rm
interactive
rm -i wordpress-*.sql
alors il demandera une confirmation avant de supprimer chaque fichier
Oui, il fait l'affaire pour vous et supprime tous les fichiers avec ce schéma dans le répertoire actuel. Et NON, cela ne supprime pas les fichiers dans les sous-répertoires.
Lorsque vous n'êtes pas sûr de ce qui se passe lorsque vous exécutez une commande telle que:
rm wordpress-*.sql
puis lancez-le simplement avec ls
:
ls wordpress-*.sql
les fichiers que vous voyez en sortie sont ceux qui seront supprimés.
Lorsque vous essayez d’obtenir une liste du type: foo*
, il est préférable d’utiliser le commutateur -d
avec ls
afin d’empêcher la liste des fichiers contenant un répertoire nommé foobar/
etc.
ls -d foo*
Cette astuce fonctionne pour les commandes qui ne sont pas utilisées pour effectuer le travail de manière récursive.
Vous pouvez également saisir l’entrée souhaitée, par exemple: wordpress-*
, puis appuyer sur Ctrl+Alt+*, et maintenant tous les matchs sont tapés automatiquement devant votre commande.
Non, rm
ne recurse pas à travers les sous-répertoires.
Voir Supprimer les fichiers correspondants dans tous les sous-répertoires - SuperUser pour connaître les méthodes de suppression des fichiers dans les sous-répertoires.
Si vous êtes préoccupé par la suppression accidentelle d'un élément important, utilisez gvfs-trash
(qui envoie les fichiers à la corbeille) au lieu de rm
(qui supprime définitivement les fichiers).