120 votes

Comment supprimer plusieurs fichiers à la fois dans Bash sous Linux ?

J'ai cette liste de fichiers sur un serveur Linux :

abc.log.2012-03-14
abc.log.2012-03-27
abc.log.2012-03-28
abc.log.2012-03-29
abc.log.2012-03-30
abc.log.2012-04-02
abc.log.2012-04-04
abc.log.2012-04-05
abc.log.2012-04-09
abc.log.2012-04-10

J'ai supprimé les fichiers journaux sélectionnés un par un, en utilisant la commande rm -rf voir ci-dessous :

rm -rf abc.log.2012-03-14
rm -rf abc.log.2012-03-27
rm -rf abc.log.2012-03-28

Existe-t-il un autre moyen pour que je puisse supprimer les fichiers sélectionnés immédiatement ?

10voto

Il suffit d'utiliser la sélection multiligne en sublime pour combiner tous les fichiers en une seule ligne et ajouter un espace entre chaque nom de fichier, puis ajoutez rm au début de la liste. Ceci est surtout utile lorsqu'il n'y a pas de modèle dans les noms de fichiers que vous souhaitez supprimer.

[$]> rm abc.log.2012-03-14 abc.log.2012-03-27 abc.log.2012-03-28 abc.log.2012-03-29 abc.log.2012-03-30 abc.log.2012-04-02 abc.log.2012-04-04 abc.log.2012-04-05 abc.log.2012-04-09 abc.log.2012-04-10

5voto

lacrosse1991 Points 541

Un joker fonctionnerait bien pour cela, bien que pour être sûr, il serait préférable de rendre l'utilisation du joker aussi minimale que possible, donc quelque chose comme cela :

rm -rf abc.log.2012-*

Bien qu'à première vue, ce ne sont que des fichiers simples ? L'option récursive ne devrait pas être nécessaire si aucun de ces éléments ne sont des répertoires, il est donc préférable de ne pas l'utiliser, uniquement pour des raisons de sécurité.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X