EDIT: Saya seharusnya menambahkan, jika Anda tidak dapat menggunakan perintah WHERE dari command prompt, periksa variabel PATH Anda. (Cukup gunakan perintah "jalur".) Pastikan C: \ Windows \ System32 ada di jalur Anda. Di situlah "where.exe" berada.
DIMANA adalah perintah yang Anda cari! WHERE seperti persilangan antara shell UNIX built-in "yang" dan "temukan" perintah, di mana ia bekerja untuk kedua perintah yang dapat dieksekusi dan file biasa.
Ini juga agak lebih kompleks daripada keduanya, meskipun, secara umum sederhana
WHERE <file>
akan bekerja.
Ini berbeda dari perintah "temukan" karena tidak mencari melalui seluruh sistem file. Sebaliknya, perilaku default adalah mencari file di dua lokasi:
- Direktori saat ini.
- Semua direktori dalam variabel PATH.
Jadi, perintah apa pun yang dapat Anda jalankan langsung dari command prompt tanpa menentukan direktori, akan ditemukan oleh perintah WHERE. (Karena perintah seperti itu sudah ada dalam daftar variabel PATH.)
Jika Anda ingin mencari hanya dalam variabel jalur perintah, Anda dapat menggunakan:
WHERE "$path:<search text>"
Jika, di sisi lain, Anda ingin menemukan semua salinan file di pohon direktori, Anda dapat menggunakan:
WHERE /R <Top Level Directory> <search text>
Akhirnya, WHERE akan menemukan perintah dan file apa pun dengan ekstensi dari variabel PATHEXT tanpa menyertakan ekstensi. Semua file lain harus ditentukan dengan tepat atau dengan wildcard.
Ambil contoh file "dxdiag.exe" dan "dxdiagn.dll". Perhatikan perintah berikut dan hasilnya:
WHERE /R C:\Windows dxdiag
C:\Windows\System32\dxdiag.exe
C:\Windows\SysWOW64\dxdiag.exe
C:\Windows\WinSxS\amd64_microsoft-windows-d..x-directxdiagnostic_31bf3856ad364e35_6.2.9200.16384_none_7c8d3f96e7882ec7\dxdiag.exe
C:\Windows\WinSxS\x86_microsoft-windows-d..x-directxdiagnostic_31bf3856ad364e35_6.2.9200.16384_none_206ea4132f2abd91\dxdiag.exe
Berhasil mengembalikan semua versi "dxdiag.exe" karena ".exe" adalah salah satu ekstensi dalam variabel PATHEXT. (Catatan: "WHERE dxdiag" akan berfungsi juga, karena C: \ Windows \ System32 ada dalam variabel PATH.)
WHERE /R C:\Windows dxdiagn
di sisi lain, gagal mengembalikan hasil apa pun, karena ".dll" tidak ada dalam PATHEXT.
Dalam hal ini, lihat hasil yang menambahkan wildcard memberi kita:
WHERE /R C:\Windows dxdiagn*
C:\Windows\System32\dxdiagn.dll
C:\Windows\System32\en-US\dxdiagn.dll.mui
C:\Windows\SysWOW64\dxdiagn.dll
C:\Windows\SysWOW64\en-US\dxdiagn.dll.mui
C:\Windows\WinSxS\amd64_microsoft-windows-d..iagnostic.resources_31bf3856ad364e35_6.2.9200.16384_en-us_daccd04369b09c70\dxdiagn.dll.mui
C:\Windows\WinSxS\amd64_microsoft-windows-d..x-directxdiagnostic_31bf3856ad364e35_6.2.9200.16384_none_7c8d3f96e7882ec7\dxdiagn.dll
C:\Windows\WinSxS\x86_microsoft-windows-d..iagnostic.resources_31bf3856ad364e35_6.2.9200.16384_en-us_7eae34bfb1532b3a\dxdiagn.dll.mui
C:\Windows\WinSxS\x86_microsoft-windows-d..x-directxdiagnostic_31bf3856ad364e35_6.2.9200.16384_none_206ea4132f2abd91\dxdiagn.dll
Berhasil mengembalikan semua versi dxdiagn.dll.
Untuk informasi lebih lanjut, gunakan "DI MANA /?". Semoga ini membantu!