Windows 7 nach Dateien mit einem Sonderzeichen im Dateinamen suchen?

23

Ich versuche, Dateien in Windows 7 zu finden, die eine Klammer im Dateinamen haben.

Wenn ich jedoch (oder *(*oder "("oder *"("*eingebe, erhalte ich entweder nichts oder jede Datei.

In der Microsoft-Referenz "Erweiterte Abfragesyntax" für die Desktopsuche wird darüber nichts erwähnt.

Was gibt?

Matias Nino
quelle
1
Siehe meinen verwandten Beitrag über die Suche nach dem? Zeichen Zeichen innerhalb des Inhalts der Textdatei. Ich sehe ähnliche Probleme. superuser.com/questions/168638/...
jpierson
Die einfache Lösung ist die Verwendung von Everything .
Michael S.

Antworten:

24

Verwenden Sie folgende Syntax: ~="(".

~=ist ein Escape - Zeichen und dann können Sie ein Sonderzeichen wie setzen (, &, ?usw. in doppelten Anführungszeichen.

Malik Ali
quelle
1
Aber wie kann ich nach Dateien suchen, die das Zeichen ~ enthalten (z. B. Wortsperrdateien '~ $ xyz.doc'?
Master of Celebration
2
Wie folgt:~="~$"
Frederic Leitenberger
1
Ich musste die Anführungszeichen weglassen, damit dies mit einem Punkt funktioniert.
sirdank
5

Ich habs!

Musste dies nur in das Suchfeld eingeben:

"*(*"
Matias Nino
quelle
Das hat bei dir mit Windows 7 geklappt? Für mich gibt es alle Dateien (gleich mit "*$*", denn ich war eigentlich für Dollar - Zeichen in Dateinamen suchen.) Was tat Arbeit für mich war ~="("(mit Anführungszeichen für Klammern) und ~=$(ohne Anführungszeichen für Dollarzeichen).
Ashleedawg
3

Lass uns helfen!

Bei Problemen mit der Windows-Suche empfehle ich zwei Dinge:

  1. Lesen Sie die AQS-Dokumentation (Advanced Query Syntax) , damit Sie wissen, was alle Sonderzeichen bewirken.
  2. Wissen Sie, dass Windows Search Ihre Abfrage in präzises AQS umwandelt, und wenn Sie in Ihren Abfragen nicht spezifisch sind, wird Windows erraten, welches AQS Sie tatsächlich gemeint haben. Die Ergebnisse können überraschend sein!

Zunächst einige Grundlagen zu AQS

Standardmäßig suchen die Eigenschaften der String-Datei (Dateiname, Autor usw.) mit COP_WORD_STARTSWITH $<, also mit jedem Wort (getrennt durch spaces , - _ () []und mehr), das mit Ihrem Suchbegriff beginnt. Andere Eigenschaften, die keine Zeichenfolgen sind (Datumsangaben usw.), suchen COP_EQUAL =standardmäßig mit oder stimmen genau überein (keine Platzhalter *und ?sind wörtlich).

Wenn Sie an einem indizierten Ort suchen, werden zweitens nicht alle nicht indizierten Orte in Ihrer Abfrage angezeigt.

Drittens, klicken Sie auf die Adressleiste, um zu sehen, mit welcher AQS-Windows-Suche tatsächlich gesucht wurde. Sie können Standortkrümel und Anzeigenamen ignorieren: Sie werden in Prozent codiert, dekodieren Sie sie also auf einer Site wie https://www.url-encode-decode.com/

Viertens, undokumentiert *und ?verhalten sich in AQS unvorhersehbar, es sei denn, sie befinden sich in einer ~ COP_DOSWILDCARDSAbfrage (dh das Nichtwort beginnt mit und Platzhalterzeichen *oder ?wird interpretiert). Die Windows-Suche konvertiert normalerweise Suchvorgänge in ~Abfragen. Beispielsweise scheint es, dass Platzhalter **und ?mit alphanumerischen Zeichen Suchzeichenfolgeneigenschaften mit ~, aber **ohne alphanumerische Zeichen nichts suchen. Auch Single *in Non ~Queries werden mit als Wildcard behandelt COP_WORD_STARTSWITH $<.

Lassen Sie uns Ihre Fragen analysieren

  1. (AQS search-ms:displayname=Search Results in Users&crumb=&crumb=location:C:\Usersvereinfachtcrumb=

    Nun, unquoted (ist ein Gruppierungsoperator für den Fall, dass Sie "group nothing" verwenden ANDoder " ORgroup nothing" gruppieren. Windows denkt also, dass Sie "group nothing search everything" gemeint haben.

  2. *(* AQS crumb=

    Die meisten Windows-Suchvorgänge, die mit *Windows beginnen, versuchen, in eine crumb=~~query_term(a enthält Suche) zu konvertieren . *wird in einer enthaltenen Abfrage wie gewohnt behandelt. In diesem Fall wird eine Gruppe von nichts mit einem Platzhalter versehen, sodass Windows nach allen Gruppen von nichts (oder nach allem!) Sucht.

  3. "(" AQS crumb=System.Generic.String:"("

    Zitate Suche nach genauen Sätze (das gesamte Wort oder Eigentum sollten übereinstimmen) und sind wörtliche Zeichen außer *, ?und ""werden ". Dabei wird nach Wörtern gesucht, die mit beginnen (, aber da es sich bei Wörtern nicht um Wörter handelt, (wird nur nach Eigenschaften gesucht, die gerecht sind(

  4. *"("*AQS crumb=Rating:(>=1 <13) OR System.Generic.String:** System.Generic.String:"("* Dieser ist verrückt, aber Windows Search versucht, Präfixe *gefolgt von bestimmten Sonderzeichen als Sternchen zu konvertieren . 1-13 ist 1 Stern. Beachten Sie auch aus meinen Tests, dass **ohne alphanumerische Zeichen davor oder danach nach nichts anstelle eines Platzhalters gesucht wird und dies unvorhersehbar ist.

    Diese vollständige Abfrage bedeutet

    (1 Stern ODER Wort, das mit nichts beginnt) UND Eigenschaften, die gerecht sind (. *stimmt nicht mit anderen Zeichen überein, da die gesamte Eigenschaft sein muss (.

    Vereinfacht heißt es, 1 Stern Dateien genannt (

    **in der Abfrage zeigte tatsächlich eine Nicht-Ein-Stern- (Datei für mich, aber beim Ändern der **zu ***und zurück **gab es die erwarteten keine Ergebnisse ( **ist unvorhersehbar)

Die anderen Antworten

  1. ~="(" AQS crumb=System.Generic.String:~="("

    Das hat nicht funktioniert, Windows scheint nichts zu finden, wenn die Suche zu intensiv ist. filename:~="("funktioniert. Finden Sie im Wesentlichen einen Dateinamen, der nur (irgendwo enthält

  2. "*(*"AQS crumb=filename:~~"*(*" OR System.Generic.String:"*(*" Das hat funktioniert. Dateiname enthält *(*mit Platzhalterzeichen ODER ein beliebiges Eigenschaftswort, das mit Platzhalterzeichen beginnt und ein hat (. Beachten Sie, sowohl ~=als auch ~~Mittelwert enthält.

Mr_Moneybags
quelle
0

Das hat perfekt funktioniert zu finden ‚nummeriert‘ / doppelte FILES :

   name:~"*(1)*"

Um alternativ nummerierte / duplizierte Ordner zu finden, verwenden Sie:

   kind:folder name:~"*(1)*"


~="(" Wie in einer anderen Antwort vorgeschlagen, hat bei mir in Windows 10 nicht funktioniert

In meinem Fall musste ich nach DATEIKOPIEN / "nummerierten Dateien" suchen, dh nach Dateien mit "(1)" am Ende des Dateinamens, z. B. Dateien, die erstellt wurden, wenn / von:

  1. Sie ziehen / Explorer kopieren Dateien in einen Ordner, in dem bereits Dateien mit denselben Dateinamen vorhanden sind.
  2. Cloud-Synchronisierungs-Speichersoftware wie OneDrive, GoogleDrive oder DropBox stößt auf Synchronisierungsprobleme oder -konflikte und erstellt zwei Kopien einer Datei, wobei eine mit der angehängten Nummer "duplicate file", "duplicate file (1)", "duplicate file (2)" benannt wird )", etc...
Flak DiNenno
quelle
Dies beantwortet die Frage nicht (zumindest nicht direkt).
Máté Juhász
@ MátéJuhász hast du mich wirklich abgewählt? Ja wirklich? funktioniert die Verwendung meines Vorschlags ohne die Zahl "1" bei Ihnen nicht? danke
Flak DiNenno
Das hat bei mir tatsächlich funktioniert. Verwenden von filename:~"*TEXT*"Wobei TEXT die genaue Eingabe mit Sonderzeichen ist. Die Top-Antwort hat nicht funktioniert, ich konnte sie nicht mit oder ohne Anführungszeichen, mit oder ohne Sternchen, zum Laufen bringen.
Liggliluff
Möchtest du +1 geben? 😉
Flak DiNenno
0

Verwenden Sie diesen Ausdruck, um nach Dateinamen zu suchen.

filename: "*(1)*"
Glücklich
quelle
-1

Verwenden Sie dies im Suchfeld:

~"*(2)*"
Kalttöne
quelle
3
Können Sie erklären?
Bertieb
-1

~ "* (?). *" für Duplikate, die (9) nicht überschreiten, fügen Sie einfach ein weiteres hinzu? für 2 Ziffern. Aber seien Sie vorsichtig bei der Verwendung von * anstelle von?. Dies erweitert die Suche erheblich und die Ergebnisse sind möglicherweise nicht mehr wünschenswert.

Sanftmütig
quelle