Bagaimana cara membuka program melalui command prompt di Windows 8?


17

Misalkan saya memiliki nama program any_program.exedan drive sistem operasi saya C:. Lokasi program adalahD:\Any_Folder\any_program.exe

Bagaimana cara memulai / menjalankan program itu melalui command prompt di Windows 8?

Saya telah mencoba baris perintah START any_program.exe, tetapi itu menunjukkan saya kesalahan itu

Windows tidak dapat menemukan 'any_program.exe'. Pastikan Anda mengetik nama dengan benar, lalu coba lagi.

Omong-omong, ini berfungsi dengan baik di Windows 7. Dan, jika saya mengetik START notepad.exeatau START firefox.exe(Firefox tidak diinstal di drive C:), ia berfungsi di Windows 8.


Ini tidak benar-benar ada hubungannya dengan Windows 8 pada khususnya, bukan?
Joey

Saya kira begitu. Di windows 7, hanya jalan yang akan berfungsi. Tetapi di windows 8, jalur program harus di antara tanda kutip (apa yang saya temukan), atau itu menunjukkan kesalahan bahwa ia tidak dapat menemukan program (jika jalur tidak terdaftar dalam variabel lingkungan PATH atau di Registri aplikasi).
Ahmadul Hoq

2
@AhmadulHoq Windows 7 memang berperilaku dengan cara yang persis sama, sejauh yang saya tahu. Anda mungkin memiliki file di salah satu tempat itu.
Bob

Jawaban:


24

Ada tiga cara dasar untuk menjalankan 'perintah' di Command Prompt.

  • builtins ( "perintah internal" )

    Ini adalah perintah yang dibangun ke dalam cmd itu sendiri, dan tidak memerlukan permintaan program eksternal. Mereka juga tidak melakukan pencarian apa pun, dan akan selalu dieksekusi dengan prioritas tertinggi jika cocok. Anda dapat mem-bypass builtin dengan membungkus nama yang dapat dieksekusi dalam tanda kutip: echomemanggil builtin, tetapi "echo"akan mencari aturan cmd berikut.

  • Doa langsung

    Ini adalah ketika Anda secara langsung menentukan nama program (tanpa jalur). Misalnya, jika Anda menjalankan cmd( cmd.exe) atau ipconfig( ipconfig.exe) pada prompt, Anda langsung memanggil perintah eksternal. Ini melakukan pencarian terbatas yang dilaksanakan seluruhnya dalam Command Prompt, dalam urutan ini:

    • Direktori saat ini.
    • Direktori yang tercantum dalam variabel lingkungan PATH.

    (terima kasih kepada dxiv untuk komentarnya)

  • Melalui startperintah

    Ketika Anda mencoba mengeksekusi file melalui startperintah, Command Prompt tidak melakukan pencarian apa pun. Sebagai gantinya, ia meneruskan nama file (dan argumen) ke Windows itu sendiri (melalui ShellExecuteExpanggilan API), yang kemudian harus mencari lokasi file. Ada beberapa tempat yang dicari dalam urutan berikut:

    • Direktori kerja saat ini
    • Direktori Windows
    • Direktori Windows \ System32
    • Direktori yang tercantum dalam variabel lingkungan PATH
    • Pendaftaran Aplikasi Path

    Perhatikan bahwa dialog Run juga menggunakan metode pencarian ini.


Biasanya, Anda dapat menavigasi ke lokasi file dengan cd /d D:\Any_Folder( /dartinya ganti drive) dan jalankan saja any_program.exe. Atau, Anda dapat menentukan path lengkap D:\Any_Folder\any_program.exe.

Jika Anda ingin memulainya start any_program.exe, Anda memiliki beberapa opsi:

  • Anda bisa meletakkannya di direktori Windows atau System32, atau direktori apa pun di variabel lingkungan PATH.
  • Anda dapat menambahkan direktori tempatnya berada di ( D:\Any_Folder) ke variabel lingkungan PATH, lihat pertanyaan ini untuk detailnya.
  • Anda dapat menambahkannya ke kunci registri App Paths, seperti yang dilakukan Notepad dan Firefox. Jalur Aplikasi menautkan kata kunci file (seperti firefox.exe) dengan path lengkap ke file, tidak seperti opsi lain yang berhubungan dengan direktori. Lihat di sini untuk informasi lebih lanjut.

3
Untuk kelengkapan, perlu dicatat bahwa menjalankan program pada command prompt secara langsung karena any_program.exetidak mencari kunci App Paths, saat menjalankannya seperti start any_program.exemisalnya pada instalasi Win7 default, memasukkan wordpadpada prompt akan memberikan not recognizedkesalahan, ketika start wordpadberhasil meluncurkan wordpad ( berdasarkan kunci App Paths-nya). Alasan teknisnya adalah bahwa halaman yang ditautkan mengacu ke ShellExecuteEx (yang startmenggunakan) sementara CreateProcess (yang menggunakan eksekusi langsung) secara khusus menyebutkan bahwa Jalur Aplikasi tidak dicari.
dxiv

@dxiv Terima kasih. Ternyata pemanggilan langsung melalui cmd hanya mencari direktori cwd dan PATH yang terdaftar. Saya akan segera berubah.
Bob

1
Terima kasih, itu cepat untuk komentar terlambat 3-tahun ;-) Docs-link yang relevan adalah msdn.microsoft.com/en-us/library/windows/desktop/ms682425.aspx tapi saya tidak punya ruang untuk memasukkannya di komentar sebelumnya. Logika pencarian terdaftar di # 1-6 di bawah lpCommandLine.
dxiv

1
@dxiv Terima kasih atas tautannya. Saya juga telah mengeditnya, meskipun tampaknya tidak sesuai dengan perilaku saya yang diamati ... (coba: set path=diikuti oleh cmdtidak dapat menemukannya, tetapi start cmdberfungsi karena masih mencari jalur di luar env var).
Bob

1
Terima kasih telah memeriksa ulang dua kali. Memang benar bahwa eksekusi langsung cmd tidak mencari direktori windows / sistem secara default, dan saya salah menunjuk ke dokumen CreateProcess. Tampaknya cmd memiliki logikanya sendiri, per bagian "Urutan Pencarian Perintah" di bawah technet.microsoft.com/en-us/library/… dating kembali ke setidaknya waktu NT, dan kemungkinan besar selamanya.
dxiv

7
start D:\Any_Folder\any_program.exe

atau, ketika path atau file berisi spasi

start "" "D:\Any_Folder\any_program.exe"

start any_program.exehanya berfungsi untuk program-program tersebut, yang terletak di %PATH%variabel lingkungan, atau terdaftar dalam registri di kunci HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Pathsatau HKEY_CURRENT_USERanalognya.


5

Anda memiliki dua opsi:

  1. Tambahkan program ke %PATH%variabel Anda
  2. Gunakan tanda kutip di jalan pintas Anda

Detail:

Menambahkan any_program.exeke jalur:

  1. Pergi ke "Control Panel" -> "Pengaturan Sistem Lanjut"
    Pengaturan Sistem Lanjutan
  2. Buka tab Advanced
    Pengaturan sistem

  3. Klik pada "Variabel Lingkungan" Tambahkan folder di mana any_program.exe berada. Edit Variabel PATH dan tambahkan folder pada akhirnya, dipisahkan oleh a;
    variabel jalur

  4. Anda sekarang dapat menggunakan any_program.exe di kotak dialog run (Coba logout dan kembali untuk memastikan perubahan variabel path Anda digunakan.)

Menggunakan jalur lengkap

Alih-alih menggunakan any_program.exedalam dialog Run, Anda perlu menggunakan PATH lengkap. Jadi ketik D:\Stuff\App\any_program.exedialog run saja.


tangkapan layar tersebut WAAAY hingga besar. Keberatan memilikinya pada ukuran yang masuk akal?
Journeyman Geek

Mengerjakannya ...
Nemo

Direktori jalur di Windows dibatasi oleh titik koma ( ;), bukan titik dua ( :) ...
Bob

Saya memiliki itu di pikiran saya, tetapi masih salah ketik.
Nemo

Screenshot diambil dari c-sharpcorner.com/UploadFile/6cde20/… rupanya. Tangkapan layarnya mengerikan
Journeyman Geek

1
  1. Buka Command Prompt
  2. Ketikkan nama program yang ingin Anda jalankan. Jika ada pada variabel Sistem PATH maka akan dieksekusi. Jika tidak, Anda harus mengetikkan path lengkap ke program. Misalnya, untuk menjalankan D: \ Any_Folder \ any_program.exe ketik D: \ Any_Folder \ any_program.exe pada prompt perintah dan tekanEnter

Haha trik yang bagus!
Ahmadul Hoq

1

Saya menggunakan metode yang belum sederhana. . .
Salin pintasan file ke C: \ users \ name lalu ketikkan nama pintasan di kotak dialog run. . . . .


0

Saya kira Anda harus menambahkan path ke variabel PATH dalam variabel sistem


0

Gunakan CMD untuk melakukan ini, bukan GUI.

  1. Membuat Lokasi File yang Dapat Dieksekusi Tersedia dalam CMD yaitu Membuat PATHVariabel:

    Sebagai contoh:

    • Skenario: Anda Ingin Membuka Acrobat Dari CMD
    • SET PATH: Dalam Jenis CMD

      SET ACROBAT="C:\Program Files (x86)\Adobe\Acrobat 11.0\Acrobat"
      
  2. Menjalankan file Dari CMD:

    Dalam Jenis CMD:

    START ACROBAT
    

Itu dia !!!
Kuharap Ini Bermanfaat.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.