GNU/Linux >> Tutoriels Linux >  >> Linux

Supprimer les fichiers qui commencent par mais ne contiennent pas

Oui, vous pouvez utiliser plus d'un modèle avec find :

$ find -name 'master-*' \! -name 'master-2018*' -print0 -prune |
     xargs -0 echo rm -fr

(supprimer le echo si vous êtes satisfait du test)

Vous devez ajouter un -maxdepth 1 prédicat juste après find si vous voulez uniquement supprimer des fichiers du répertoire courant, c'est-à-dire master-1991 mais pas de subdir/master-1991 .


En bas :

shopt -s extglob
echo rm master-!(2018*)

Supprimer le echo si cela semble correct.

Ce qui précède utilise la fonction de globalisation étendue de bash pour faire correspondre les fichiers commençant par master- mais qui n'ont pas 2018 immédiatement après, puis suivi de n'importe quoi (* ).


Linux
  1. Comment rechercher des fichiers avec la commande fd sous Linux

  2. Trouvez des fichiers et tarez-les (avec des espaces)

  3. rechercher et supprimer des fichiers avec de l'espace à l'aide de la commande find sous Linux

  4. Comment supprimer des dossiers avec un certain nom

  5. Répertorier tous les fichiers d'images graphiques avec rechercher ?

Commande de recherche Linux avec des exemples pratiques

Retrouver les fichiers perdus avec Scalpel

Comment supprimer des fichiers avec une extension spécifique sous Linux

Comment rechercher des fichiers avec la commande fd sous Linux

Comment trouver tous les fichiers qui ne contiennent pas de chaîne de texte ?

Tutoriel sur la commande de recherche Linux (avec exemples)