Windows Command Line: 'tidak dikenali sebagai perintah internal atau eksternal, program yang dapat dijalankan, atau file batch.'

10

Ketika saya menjalankan cmd di Windows 7 (dengan mengetikkan 'cmd'Windows Run), kesalahan berikut menunjukkan:

masukkan deskripsi gambar di sini

'-p' tidak dikenali sebagai perintah internal atau eksternal, program yang dapat dijalankan, atau file batch.

Saya telah mencoba memeriksa PATH dalam variabel lingkungan. Berlari echo %PATH%memberi saya hal berikut:

C: \ Windows \ System32; C: \ Windows; C: \ Windows \ System32 \ WindowsPowerShell \ v1.0; C: \ xampp \ php;

Saya telah memeriksa semua direktori yang ditunjuk oleh PATH. Segalanya tampak ada di tempatnya. Yang tidak bisa saya mengerti adalah di mana '-p'dipanggil. Saya berpikir bahwa itu ada hubungannya dengan cmdkarena hanya keluar ketika saya menelepon cmddan tidak ketika saya menjalankan ipconfigatau ping, misalnya.

nmenego
sumber
Bagaimana Anda menjalankan 'cmd'? Apakah Anda menjalankan pintasan atau mengetik 'cmd' di kotak pencarian?
Simon
@Simon, saya menjalankannya menggunakan Windows Run. Saya memperbarui pertanyaan.
nmenego
periksa setiap direktori yang tercantum di sana dalam PATH Anda, untuk cmd. * - mungkin itu akan memberikan petunjuk
StevenV
Orang ini: stackoverflow.com/questions/10077689/… memiliki ruang sebelum; dalam pernyataan path.
edelwater
@edelwater Kasus yang sedikit berbeda di sana; orang itu sedang mencoba menjalankan sebuah program bernama R, yang seharusnya ada di jalurnya tetapi tidak, karena kesalahan itu. Kasing ini adalah dari pemroses perintah ( cmd) itu sendiri meningkatkan kesalahan pada awal - dan mulai berhasil. Namun, masalah yang menyebabkannya mungkin sama; Saya tidak akan mengabaikan itu ...
Bob

Jawaban:

12

Mungkin saja Anda memiliki perintah 'AutoRun' yang diatur dalam registri. Ada dua kunci registri, satu per pengguna dan satu per komputer, yang dapat menentukan perintah yang dijalankan setiap kali prosesor perintah ( cmd.exe) dimulai. Mereka sebenarnya terdaftar di cmd /?.

Anyway, coba jalankan cmd /ddan lihat apakah itu menghasilkan pesan yang sama. The /dberarti bendera "tidak menjalankan autorun perintah", yang membuatnya sempurna untuk pengujian ini.

Nilai registri adalah:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun

Periksa keduanya. Secara default, seharusnya tidak ada. Anda mungkin ingin memperbaiki string perintah di milik Anda, atau bahkan menghapusnya seluruhnya.

Terkait: http://blogs.msdn.com/b/oldnewthing/archive/2007/11/21/6447771.aspx


Atau, Anda bisa memiliki skrip batch atau set up serupa dengan nama cmd, yang dieksekusi bukan asli cmd. Coba perintah where cmduntuk mencetak daftar cmds di jalur Anda, dalam urutan eksekusi. Jika ada selain / sebelum yang masuk C:\Windows\System32\cmd.exe, Anda mungkin ingin menghapusnya, atau menghapus path mereka dari variabel lingkungan PATH Anda.

Bob
sumber
Saya mencoba mengeksekusi cmd /ddan seperti yang diharapkan, masalahnya hilang. Saya kemudian memeriksa registri, dan saya menemukan HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRunbeberapa string perintah sehubungan dengan ANSICON. Saya tidak dapat menghapusnya terakhir kali saya menghapusnya. Saya hanya menghapus kuncinya! Ini jawaban yang cemerlang!
nmenego