Comment puis-je créer une recherche enregistrée qui exclut un dossier spécifique des résultats?

24

J'essaie de configurer une recherche enregistrée de mon Mac qui exclura les fichiers d'un dossier appelé «XYZ» des résultats de la recherche. La raison en est que je reçois une tonne de faux positifs de ce dossier qui sont difficiles à trier.

Juste pour être clair, je sais que vous pouvez ajouter des dossiers à une liste "Confidentialité" dans les préférences Spotlight, mais je ne veux pas ajouter ce dossier à cette liste - parce que je ne veux pas l'exclure de toutes les recherches futures , juste cette recherche enregistrée spécifique. Une idée de comment on pourrait faire quelque chose comme ça?

user1457323
la source
Après quelques recherches sur Google et quelques tests de recherche, je ne pense pas que cela puisse être fait :(
Cesium
Cela semble être le consensus général. Merci d'avoir pris le temps de l'examiner. Je marquerai cette question comme terminée si vous souhaitez la soumettre comme réponse.
user1457323

Réponses:

8

J'ai regardé certains des fichiers de recherche enregistrés dans le bundle d'applications du Finder, et j'ai par exemple /System/Library/CoreServices/Finder.app/Contents/Resources/MyLibraries/myDocuments.cannedSearch/search.savedSearchutilisé un format comme celui-ci pour exclure les répertoires:

<key>FXScopeArrayOfPaths</key>
<array>
  <string>~/</string>
  <string>-Library</string>
  <string>-Music/iTunes</string>
  <string>-Documents/Steam Content</string>
  <string>~/Library/Mobile Documents/</string>
  <string>-com~apple~Keynote</string>
  <string>-com~apple~Pages</string>
  <string>-com~apple~Numbers</string>
</array>

Vous pouvez donc exclure des sous-dossiers en ajoutant des chaînes commençant par un caractère moins après un chemin d'accès complet. Quelque chose comme -~/Libraryça ne semble pas fonctionner.

Vous pouvez modifier les fichiers de recherche enregistrés en les déposant sur un éditeur de texte. RawQueryDict:SearchScopeset FXScope:FXScopeArrayOfPathssemblent répertorier les mêmes chemins par défaut, mais le simple fait de modifier le second semble exclure les dossiers au moins dans le Finder.

Lri
la source
1
Vous avez peut-être découvert quelque chose ici. Cela semble fonctionner! Merci pour la solution. Vous m'avez sauvé pas mal de tête - et probablement d'innombrables autres qui trouveront cette question à l'avenir.
user1457323
Dommage que cela ne puisse pas être fait sans éditer XML mais oui, très bien trouvé :)
Cesium
Quelqu'un sait-il si un nom de dossier peut correspondre, quel que soit le chemin? c'est à dire. ignorer le sous-dossier / nospotlight dans chaque dossier parent, / folder1 / nospotlight, / folder2 / nospotlight ....
jb510
Je peux confirmer que cela fonctionne en éditant les fichiers sous ~/Library/Saved Searchesdans OSX 10.10.x
Ashutosh Jindal
2
Ne fonctionne plus dans Sierra
DisplayName
16

Si vous maintenez optionle bouton (+) pour ajouter un critère de recherche deviendra un (…) et un Any/All/Nonebloc. Définissez ce paramètre sur Aucun .

Pour les critères, sélectionnez Document Container. Il ne sera pas dans la liste par défaut à côté Name, Kindetc. Sélectionnez Other…pour le sélectionner dans une liste de critères supplémentaires tant qu'il a sa propre fonction de recherche : Tous ces attributs

Définissez-le sur le nom du dossier que vous souhaitez exclure en utilisant ce que is/contains/begins with/ends withvous trouvez approprié.

Le résultat final devrait ressembler à ceci: résultat

Lac
la source
1
Cela fonctionne et aurait dû être la réponse choisie. :) Merci.
Ronixus
1
Cela ne fonctionne pas pour moi sur OSX 10.9.5
New Alexandria
Je viens d'arriver en 10.10 [Yosemite] et cela semble inchangé. Je n'ai pas de machine 10.9 [Mavericks] à portée de main pour vérifier pour le moment mais je ne me souviens pas qu'elle soit manquante. Quelle partie ne fonctionne pas pour vous?
Lake
2
Raison possible pour laquelle Document Containeril n'est peut-être pas possible d'exclure des dossiers: apple.stackexchange.com/questions/132860/… (Cela ne fonctionne pas pour moi le 10.8.5)
Ashutosh Jindal
1
Ne travaille pas pour moi à Sierra.
DisplayName
5

Je veux ajouter que si "Conteneur de documents" ne fonctionne pas pour vous (comme c'est mon problème), vous pouvez définir le dossier de recherche pour activer / désactiver des dossiers spécifiques.

Pardonnez-moi, je n'ai pas les "représentants" pour poster des images donc je ferai de mon mieux. Ceci est mon premier post alors n'hésitez pas à m'enflammer.

Pour mon flux de travail d'organisation musicale, je voulais que le dossier iTunes masque les sous-dossiers erronés. Bien sûr, déplacer des dossiers hors du dossier iTunes n'était pas une option car cela casserait / paniquerait iTunes en recréant ces mêmes dossiers. Voici comment j'ai accompli cela en peaufinant la méthode ci-dessus de Lake:

  1. Accédez au dossier iTunes, dans le menu Finder> Fichier> "Nouveau dossier intelligent"
  2. Dans les critères de recherche initiale sélectionnez Kind> is>Folder
  3. Suivant l'exemple de Lake, dans la liste déroulante créée en maintenant optionet (+), sélectionnez Any of the following are true(c'est pour les dossiers d'activation) Pour désactiver les dossiers comme Lake mentionné ci-dessus, changez 'Tout' en 'Aucun'
  4. Étant donné que je suis "optant pour" des dossiers, j'ai ensuite imbriqué 5 critères sous l' Anyoption qui ressemblait à ceci (les noms de dossier réels sont utilisés par exemple):

Name is"Ajouter automatiquement à iTunes"
Name is"Musique"
Name is"MUSIQUE À AJOUTER - DOSSIER PRINCIPAL"
Name is"Résultats TuneUp"
Name is"Marquage MusicBrainz"

Donc, le résultat final est que lorsque je clique sur la recherche intelligente (située dans la barre latérale du Finder pour moi), je ne verrai que les 5 dossiers que je veux sans détruire la disposition des dossiers inhérente du dossier principal dans lequel ils résident.

J'espère que cela aide.

Mat
la source
3
Bienvenue sur le site! Merci d'avoir pris le temps de décrire votre solution en détail. Si vous pensez qu'une capture d'écran serait utile, veuillez la télécharger sur un site de partage public (par exemple Dropbox) et ajouter un lien vers la réponse ou dans les commentaires. Quelqu'un avec plus de réputation l'intégrera ensuite dans votre réponse.
nohillside
1

Actuellement, je ne pense pas que cela puisse être fait. Il semble qu'il y ait pas mal de gens qui essaient de faire cela que Google trouve et personne n'a de vraie réponse (autre que l'exclusion de confidentialité) :(

Césium
la source
0

Dans le Finder lorsque vous recherchez des fichiers, vous pouvez les exclure en ajoutant moins devant les critères. Par exemple, je veux rechercher tous les fichiers qui ne sont pas des fichiers pdf, je peux écrire "Kind is -pdf". Cela semble fonctionner pour moi.

user61982
la source
0

Je suis presque sûr d'avoir trouvé une manière différente de procéder.

Lors de la configuration du dossier intelligent, utilisez un attribut de recherche de requête brute. Par défaut, ce n'est pas dans le menu déroulant d'attribut de recherche, vous devrez donc le trouver en cliquant sur Autre en bas du menu déroulant.

Dans la zone de saisie à côté de Raw Query, tapez:

kMDItemPath != "/Users/yourname/Documents/foldertoexclude" 

dans lequel le texte entre guillemets est le chemin d'accès du dossier à exclure, qui peut être trouvé via Get Info.

Stéphanie
la source
Cela ne fonctionne pas pour moi sur OSX 10.9.5
New Alexandria
2
J'espérais vraiment que cela fonctionnerait, mais pas de joie. Les documents indiquent "[...] mais ne peuvent pas être utilisés dans une requête ou pour trier les résultats de la recherche". ( developer.apple.com/library/mac/documentation/CoreServices/… ) pour quelque raison que ce soit, nous ne le saurons jamais
dualed
-1

Je souffrais trop du même problème et j'ai trouvé un moyen de le faire.

Accédez à Système de préférences> Spotlight> Sélectionner, puis sélectionnez l'onglet "Confidentialité" et vous pouvez ajouter des emplacements spécifiques à exclure dans la recherche Spotlight.

J'ai essayé, ça marche.

Gilles
la source
Vous avez manqué cette partie? "Juste pour être clair, je sais que vous pouvez ajouter des dossiers à une liste" Confidentialité "dans les préférences de Spotlight, mais je ne veux pas ajouter ce dossier à cette liste - parce que je ne veux pas l'exclure de tout futur recherches, juste cette recherche enregistrée spécifique. "
Jim L.