Windows 7 tìm kiếm tệp có ký tự đặc biệt trong tên tệp?


23

Tôi đang cố gắng tìm các tệp trong Windows 7 có dấu ngoặc đơn trong tên tệp.

Tuy nhiên, khi tôi gõ (hoặc *(*hoặc "("hoặc *"("*tôi nhận được một trong hai không có gì hoặc mỗi tập tin.

Tham chiếu "cú pháp truy vấn nâng cao" của Microsoft cho tìm kiếm trên máy tính để bàn không đề cập gì về điều này.

Đưa cái gì?


1
Xem bài viết liên quan của tôi về việc tìm kiếm? nhân vật trong nội dung tập tin văn bản. Tôi đang thấy những vấn đề tương tự. superuser.com/questions/168638/
Mạnh

Giải pháp dễ dàng là sử dụng mọi thứ .
Michael S.

Câu trả lời:


24

Sử dụng cú pháp sau : ~="(".

~=là một nhân vật chạy thoát và sau đó bạn có thể đặt một nhân vật đặc biệt như (, &, ?vv trong dấu ngoặc kép.


1
Nhưng làm cách nào tôi có thể tìm kiếm các tệp chứa ký tự ~ (ví dụ: các tệp khóa từ '~ $ xyz.doc'?
Master of

2
Như thế này:~="~$"
Frederic Leitenberger

1
Tôi đã phải bỏ qua các dấu ngoặc kép để làm việc này với một khoảng thời gian.
sirdank

5

Hiểu rồi!

Chỉ cần gõ cái này vào hộp tìm kiếm:

"*(*"

Điều này làm việc cho bạn với Windows 7? Đối với tôi, nó trả về tất cả các tệp (giống với "*$*", vì tôi thực sự đang tìm kiếm ký hiệu đô la trong tên tệp.) Điều gì đã làm cho tôi~="("(với dấu ngoặc kép cho dấu ngoặc đơn) và ~=$(không có dấu ngoặc kép cho ký hiệu đô la).
ashleedawg

3

Hãy giúp!

Đối với mọi sự cố Windows Search, đề xuất của tôi là hai điều:

  1. Đọc tài liệu AQS (Cú pháp truy vấn nâng cao) để bạn biết tất cả các ký tự đặc biệt làm gì.
  2. Biết rằng Windows Search sẽ chuyển đổi truy vấn của bạn thành AQS chính xác và trừ khi bạn cụ thể trong các truy vấn của mình, Windows sẽ đoán AQS bạn thực sự có ý gì. Kết quả có thể gây ngạc nhiên!

Đầu tiên, một số điều cơ bản về AQS

Theo mặc định, các thuộc tính tệp chuỗi (Tên tệp, tác giả, v.v.) tìm kiếm COP_WORD_STARTSWITH $<, do đó, bất kỳ từ nào (được phân tách bằng spaces , - _ () []và nhiều hơn) bắt đầu bằng cụm từ tìm kiếm của bạn. Các thuộc tính không phải chuỗi khác (Ngày, v.v.) tìm kiếm với COP_EQUAL =hoặc khớp chính xác theo mặc định (Không có thẻ hoang dã *và bằng ?chữ).

Thứ hai, nếu bạn đang tìm kiếm ở bất kỳ vị trí được lập chỉ mục nào , thì tất cả các vị trí không được lập chỉ mục trong truy vấn của bạn sẽ không được hiển thị.

Thứ ba, Nhấp vào Thanh địa chỉ để xem AQS Windows Search thực sự được tìm kiếm với cái gì. Bạn có thể bỏ qua mẩu vụn vị trí và tên hiển thị: Nó sẽ được mã hóa theo phần trăm, vì vậy hãy giải mã trên một trang web như https://www.url-encode-decode.com/

Thứ tư, không có giấy tờ *?hành xử không chính đáng trong AQS trừ khi chúng nằm trong một ~ COP_DOSWILDCARDStruy vấn (có nghĩa là từ không bắt đầu bằng và thẻ hoang dã *hoặc ?được giải thích). Tìm kiếm Windows thường sẽ chuyển đổi các tìm kiếm thành một ~truy vấn. Ví dụ, có vẻ như các thẻ hoang dã **?với các ký tự chữ và số tìm kiếm thuộc tính chuỗi ~, nhưng **không có tìm kiếm chữ và số. Ngoài ra đơn *trong các ~truy vấn không được coi là ký tự đại diện với COP_WORD_STARTSWITH $<.

Hãy phân tích các truy vấn của bạn

  1. (AQS search-ms:displayname=Search Results in Users&crumb=&crumb=location:C:\Usersđơn giản hóacrumb=

    Chà, không được trích dẫn (là một toán tử nhóm khi bạn sử dụng ANDhoặc OR, bạn không nhóm gì cả, vì vậy Windows nghĩ rằng bạn có nghĩa là nhóm không có gì tìm kiếm mọi thứ.

  2. *(* AQS crumb=

    Hầu hết các tìm kiếm windows bắt đầu bằng *windows đều cố gắng chuyển đổi thành crumb=~~query_term(tìm kiếm chứa). *được coi là bình thường trong một truy vấn chứa. Dù sao, trong trường hợp này, bạn sẽ nhận được một nhóm không có gì, vì vậy Windows sẽ tìm kiếm tất cả các nhóm không có gì (hoặc tất cả mọi thứ!)

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

    Trích dẫn tìm kiếm cụm từ chính xác (toàn bộ từ hoặc tài sản phải phù hợp) và có ký tự chữ trừ *, ?""trở thành ". Điều này tìm kiếm các từ bắt đầu bằng (, nhưng vì các từ không (chỉ tìm kiếm các thuộc tính chỉ(

  4. *"("*AQS crumb=Rating:(>=1 <13) OR System.Generic.String:** System.Generic.String:"("* Điều này thật điên rồ, nhưng Windows Search cố gắng chuyển đổi tiền tố *theo sau bởi một số ký tự đặc biệt là xếp hạng sao. 1-13 là 1 sao. Cũng lưu ý từ thử nghiệm của tôi, **không có bất kỳ ký tự chữ và số nào trước hoặc sau khi tìm kiếm không có gì thay vì thẻ hoang dã và không thể đoán trước.

    Truy vấn đầy đủ này có nghĩa là

    (Xếp hạng 1 sao HOẶC Từ bắt đầu không có gì) VÀ các thuộc tính chỉ (. *sẽ không khớp với bất kỳ nhân vật nào khác vì toàn bộ tài sản phải có (.

    Đơn giản hóa nó có nghĩa là, các tập tin 1 sao được gọi là (

    **trong truy vấn thực sự cho thấy một (tệp không phải là một ngôi sao đối với tôi, nhưng khi thay đổi **thành ***và quay lại **nó đã cho kết quả như mong đợi ( **không thể đoán trước)

Các câu trả lời khác

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

    Điều này không hoạt động, các cửa sổ dường như không tìm thấy gì nếu số lượng tìm kiếm quá nhiều. filename:~="("làm việc. Về cơ bản tìm thấy một tên tệp chỉ chứa một (nơi nào đó

  2. "*(*"AQS crumb=filename:~~"*(*" OR System.Generic.String:"*(*" Điều này đã làm việc. Tên tệp chứa *(*thẻ hoang dã HOẶC bất kỳ từ thuộc tính nào bắt đầu bằng thẻ hoang dã và có một (. Lưu ý, cả hai ~=~~có nghĩa là chứa.


0

Đây làm việc hoàn hảo để tìm 'số' / trùng lặp FILES :

   name:~"*(1)*"

luân phiên , để tìm số / trùng lặp FOLDERS sử dụng:

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


~="(" như được đề xuất trong một câu trả lời khác không hoạt động với tôi trong Windows 10

Trong trường hợp của tôi, tôi cần tìm FILE COPIES / "tệp được đánh số", tức là tìm các tệp có "(1)" được gắn vào cuối tên tệp, ví dụ: các tệp được tạo khi / by:

  1. bạn kéo / thám hiểm sao chép tệp vào một thư mục, trong đó các tệp có cùng tên tệp đã tồn tại.
  2. phần mềm lưu trữ đồng bộ hóa trên đám mây, chẳng hạn như OneDrive, GoogleDrive hoặc DropBox gặp phải sự cố hoặc xung đột đồng bộ hóa và tạo 2 bản sao của tệp, đặt tên một tệp có số "tệp trùng lặp", "tệp trùng lặp (1)", "tệp trùng lặp (2) )", Vân vân...

Điều này không trả lời câu hỏi (ít nhất là không trực tiếp).
Máté Juhász

@ MátéJuhász bạn có làm tôi thất vọng không? có thật không? sử dụng đề xuất của tôi mà không có số "1" không phù hợp với bạn? cảm ơn
Flak DiNenno

Điều này thực sự làm việc cho tôi. Sử dụng filename:~"*TEXT*"trong đó TEXT là đầu vào chính xác với các ký tự đặc biệt. Câu trả lời hàng đầu không hoạt động, tôi không thể làm cho nó hoạt động có hoặc không có dấu ngoặc kép, có hoặc không có dấu hoa thị.
Liggliluff

Quan tâm đến +1 nó? 😉
Flak DiNenno

0

Sử dụng biểu thức này để tìm kiếm với tên tệp,

filename: "*(1)*"


-1

~ "* (?). *" Đối với các bản sao không vượt quá (9), chỉ cần thêm cái khác? cho 2 chữ số. Nhưng hãy cẩn thận bằng cách sử dụng * thay vì? Nó mở rộng tìm kiếm đáng kể và kết quả có thể không còn được mong muốn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.