Je recherche dans un répertoire une chaîne particulière (pour voir toutes les instances où la chaîne est présente et dans quels fichiers). Cependant, je souhaite exclure un fichier particulier de la recherche.
Voici ce qui se passe-
$echo "searchstring" > ./old_folder/useless_file
$echo "searchstring" > ./new_folder/good_file
$grep -r --exclude="old_folder/useless_file" searchstring *
./old_folder/useless_file:searchstring
./new_folder/good_file:searchstring
Voici la sortie que je veux-
./new_folder/good_file:searchstring
--exclude="old_folder/useless_file"
simplement--exclude=useless_file
pour obtenir le même problème? (Ma lecture de la page de manuel suggère que le modèle--exclude
ne devrait être que le nom de base, sans le chemin d'accès.)Réponses:
L'
--exclude
option prend des globes qui sont comparés aux noms de fichiers, pas aux répertoires ou aux chemins d'accès complets:Donc, vous pourriez faire:
Ou, pour exclure tous les fichiers de ce répertoire:
la source