Katakanlah saya memiliki program yang X.EXE
diinstal di folder c:\abcd\happy\
pada sistem. Folder berada di jalur sistem. Sekarang anggaplah ada program lain pada sistem yang juga disebut X.EXE tetapi diinstal dalam folder c:\windows\
.
Apakah mungkin untuk dengan cepat mengetahui dari baris perintah bahwa jika saya mengetik di X.EXE
mana dari keduanya X.EXE
akan diluncurkan? (tetapi tanpa harus mencari atau melihat detail proses di Task Manager).
Mungkin semacam perintah built-in, atau beberapa program di luar sana yang dapat melakukan sesuatu seperti ini? :
detect_program_path X.EXE
windows
command-line
path
Zabba
sumber
sumber
Jawaban:
Gunakan
where
perintah. Hasil pertama dalam daftar adalah yang akan dieksekusi.Menurut posting blog ini ,
where.exe
disertakan dengan Windows Server 2003 dan yang lebih baru, jadi ini hanya bekerja dengan Vista, Win 7, et al.Di Linux, padanannya adalah
which
perintah, miswhich ssh
.sumber
listdlls -d foo.dll
untuk melihat semua proses yang memiliki modul dimuat dan path lengkap ke modul dimuat. Atau, Anda bisa melakukan pencarian file Windows untuk nama file.Berikut ini adalah skrip cmd kecil yang dapat Anda salin-tempel ke dalam file bernama sesuatu seperti
where.cmd
:sumber
Seperti utas yang disebutkan dalam komentar,
get-command
di PowerShell juga bisa menyelesaikannya. Misalnya, Anda bisa mengetikget-command npm
dan outputnya seperti di bawah ini:sumber
(get-command npm).Source
akan merespons hanya dengan jalur ke npm (sebagai contoh) alih-alih seluruh tabel dari semua properti.