Bisakah saya melakukan pencarian konten file "satu kali" di Windows Server 2008 tanpa menambahkan folder ke indeks?

9

Bisakah saya mencari file yang berisi string tertentu dalam folder jika folder itu tidak ada dalam indeks pencarian?

Jadi, katakanlah folder 'textFiles' tidak ada dalam indeks. Saya menavigasi ke folder ini di Windows Explorer. Saya mengetik '.ini' di kotak pencarian. Saya ingin melihat daftar hasil yang hanya berisi 'b.txt'

FOLDER C:\textFiles\

FILE  a.php  
CONTENT once twice thrice mice moose monkey

FILE b.txt
CONTENT mingle muddle middle.ini banana beer

FILE c.spo
CONTENT sellotape stapler phone book

Saya tidak memiliki izin untuk menambahkan folder ke indeks Windows dan saya tidak memiliki izin untuk menginstal atau menjalankan executable yang tidak dikirimkan bersama server atau aplikasi yang disetujui.

Saya akan senang dengan solusi baris perintah Windows asli jika perlu.

G-.
sumber

Jawaban:

7

Anda dapat melakukan ini dengan alat baris perintah findstr.exe yang disediakan oleh Microsoft.

  1. Buka prompt perintah dan navigasikan ke c: \ textfiles

  2. jalankan perintah findstr /L /M /C:"ini" *.*

    Catatan: Anda dapat menambahkan / S untuk mencari semua subdirektori

Detail lengkap tentang FINDSTR

  FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
        [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
        strings [[drive:][path]filename[ ...]]

  /B         Matches pattern if at the beginning of a line.
  /E         Matches pattern if at the end of a line.
  /L         Uses search strings literally.
  /R         Uses search strings as regular expressions.
  /S         Searches for matching files in the current directory and all
             subdirectories.
  /I         Specifies that the search is not to be case-sensitive.
  /X         Prints lines that match exactly.
  /V         Prints only lines that do not contain a match.
  /N         Prints the line number before each line that matches.
  /M         Prints only the filename if a file contains a match.
  /O         Prints character offset before each matching line.
  /P         Skip files with non-printable characters.
  /OFF[LINE] Do not skip files with offline attribute set.
  /A:attr    Specifies color attribute with two hex digits. See "color /?"
  /F:file    Reads file list from the specified file(/ stands for console).
  /C:string  Uses specified string as a literal search string.
  /G:file    Gets search strings from the specified file(/ stands for console).
  /D:dir     Search a semicolon delimited list of directories
  strings    Text to be searched for.
  [drive:][path]filename
             Specifies a file or files to search.

Use spaces to separate multiple search strings unless the argument is prefixed
with /C.  For example, 'FINDSTR "hello there" x.y' searches for "hello" or
"there" in file x.y.  'FINDSTR /C:"hello there" x.y' searches for
"hello there" in file x.y.

Regular expression quick reference:
  .        Wildcard: any character
  *        Repeat: zero or more occurrences of previous character or class
  ^        Line position: beginning of line
  $        Line position: end of line
  [class]  Character class: any one character in set
  [^class] Inverse class: any one character not in set
  [x-y]    Range: any characters within the specified range
  \x       Escape: literal use of metacharacter x
  \<xyz    Word position: beginning of word
  xyz\>    Word position: end of word

For full information on FINDSTR regular expressions refer to the online Command
Reference.
Jeremy W
sumber
Saya melihat apa yang Anda lakukan di sana ... : D
Tamara Wijsman
Terima kasih! Seharusnya memikirkan itu sendiri. Hadiah yang diberikan
G-.
Apa yang saya lakukan? ..
G-.
1
@ G- .: Itu merujuk pada Jeremy, bagaimana dia menggunakan pendekatan "smart @ $ #" sementara kami datang dengan solusi yang kurang layak untuk ini. Itu selalu baik untuk memiliki orang ketiga datang dan mengambil tulang (karunia) dari yang lain yang bertarung ...
Tamara Wijsman
1

Solusi termudah adalah mematikan Pencarian Windows sebentar , jika Anda memiliki izin:

  1. net stop wsearch

  2. Lakukan pencarian Anda di folder di Windows Explorer, itu akan mencari tanpa indeks.

  3. net start wsearch

Meskipun ini berfungsi untuk folder kecil, Anda mungkin mengalami masalah dengan folder yang lebih besar.

Alternatif untuk mencari konten file

Windows Grep mendasarkan dirinya pada grepide linux , dengan menyediakan GUI yang memungkinkan Anda melihat garis yang cocok; ini memungkinkan Anda melihat file dengan cepat untuk mencari berbagai kejadian dan konteksnya:

Ini memberikan beberapa opsi untuk pencarian, sehingga cocok untuk folder yang lebih besar atau lebih kompleks juga:

Ini juga memiliki wizard yang mudah jika Anda tidak repot melihat semua pengaturan, dan Anda dapat mengonfigurasi bagaimana hasil teks ditampilkan (nomor baris, tampilkan bagian / seluruh baris, font tetap, ...)

Alternatif untuk mencari nama file

Search Everything adalah salah satu mesin pencari terkecil untuk Windows dan dengan demikian mudah untuk diambil dan dijalankan, ia memiliki antarmuka pengguna yang sangat bersih dan sederhana yang memungkinkan Anda untuk dengan cepat mengindeks file dan mencari di antara mereka. Ini memiliki penggunaan sumber daya minimal dan melakukan pembaruan waktu nyata jika Anda tetap buka, jadi itu bahkan cocok sebagai pengganti Pencarian Windows jika Anda ingin ...

Saya memiliki total 904.108 file dan folder yang cukup banyak dibandingkan dengan pengguna biasa, dan ketika saya mengetik sesuatu seperti Super Useritu menampilkannya secara instan . Pengindeksan juga tidak butuh waktu lama; jadi, masalah hanya membukanya menunggu beberapa detik dan melakukan pencarian instan di ujung jari Anda.

Sebagai contoh, Anda dapat menampilkan semua file yang dapat dieksekusi dalam folder seperti ini: *.exe "C:\Program Files"

Tamara Wijsman
sumber
Meskipun Search Everything luar biasa ketika berfungsi, ia tidak melakukan pencarian teks seperti yang diminta oleh poster. Ini juga memiliki batas bawaan lebih dari 1 juta pada jumlah file pada disk yang dapat ditangani, di luar itu menjadi tidak dapat digunakan, dan juga kecuali berjalan dengan Windows, mungkin butuh waktu agak lama untuk menginisialisasi database pencariannya. Dalam kontak saya dengan pengembang mengenai masalah ini, dia mengindikasikan bahwa pengembangan telah berhenti tetapi dia tidak bermaksud menjadikannya open source.
harrymc
Telah menjalankan Cari Segalanya di server file 64 bit kami dan itu masih berfungsi, di mana batas pasti yang Anda bicarakan? Windows Grep tampaknya menjadi penyelamat? Haruskah kita berbicara tentang kelengkapan atas asumsi acak? Anda sepertinya berpikir tidak lengkap mengarah ke kualitas yang lebih tinggi? Mengajukan apa? Game kedokteran yang sedang Anda coba mainkan? Membosankan, ya? Kualitas> Kuantitas .
Tamara Wijsman
Mungkin Anda juga harus memberi tahu poster itu mengapa menggunakan grep untuk mencari '.ini' bukan ide yang baik.
harrymc
@harrymc: Karena kami mencari konten di sini, konten yang berharga ...
Tamara Wijsman
2
Terima kasih atas saran Anda. Namun, seperti yang disebutkan saya tidak dapat menginstal executable tambahan di server. "wsearch" tampaknya bukan layanan yang valid pada instalasi saya.
G-.