Windows Command Line: 'ไม่ได้รับการยอมรับว่าเป็นคำสั่งภายในหรือภายนอก, โปรแกรมที่ทำงานได้หรือไฟล์แบตช์'


10

เมื่อฉันเรียกใช้ cmd ใน Windows 7 (โดยพิมพ์'cmd'ใน Windows Run) ข้อผิดพลาดต่อไปนี้จะแสดง:

ป้อนคำอธิบายรูปภาพที่นี่

'-p' ไม่รู้จักว่าเป็นคำสั่งภายในหรือภายนอก, โปรแกรมที่ทำงานได้หรือไฟล์แบตช์

ฉันได้ลองตรวจสอบ PATH ในตัวแปรสภาพแวดล้อมแล้ว วิ่งecho %PATH%ให้ฉันต่อไปนี้:

C: \ Windows \ System32; C: \ Windows; C: \ Windows \ System32 \ WindowsPowerShell \ v1.0; C: \ XAMPP \ PHP;

ฉันตรวจสอบไดเรกทอรีทั้งหมดที่ชี้ไปตามเส้นทางแล้ว ดูเหมือนว่าทุกอย่างจะอยู่ในสถานที่ สิ่งที่ฉันไม่เข้าใจคือที่ที่'-p'ถูกเรียก ฉันคิดว่ามันมีบางอย่างที่เกี่ยวข้องกับcmdมันเพราะมันจะออกมาเมื่อฉันโทรcmdและไม่ใช่เมื่อฉันวิ่งipconfigหรือpingเช่น


คุณเรียกใช้ 'cmd' อย่างไร คุณรันทางลัดหรือพิมพ์ 'cmd' ในช่องค้นหาหรือไม่
Simon

@ Simon ฉันใช้ Windows Run ฉันอัพเดทคำถาม
nmenego

ตรวจสอบแต่ละไดเรกทอรีที่มีอยู่ในเส้นทางของคุณสำหรับ cmd. * - อาจจะให้เบาะแส
StevenV

ผู้ชายคนนี้: stackoverflow.com/questions/10077689/…มีพื้นที่ก่อนหน้า; ในคำสั่งเส้นทาง
edelwater

@ edelwater กรณีที่แตกต่างกันเล็กน้อยมี; ผู้ชายคนนั้นกำลังพยายามเรียกใช้โปรแกรมที่เรียกว่าRซึ่งควรจะอยู่ในเส้นทางของเขา แต่ไม่ใช่เพราะข้อผิดพลาดนั้น กรณีนี้เป็นของตัวประมวลผลคำสั่ง ( cmd) ตัวเองยกข้อผิดพลาดในการเริ่มต้น - และเริ่มประสบความสำเร็จ ถึงกระนั้นปัญหาที่ก่อให้เกิดมันอาจเหมือนกัน ฉันจะไม่ได้ส่วนลดที่ ...
บ๊อบ

คำตอบ:


12

เป็นไปได้ว่าคุณมีการตั้งค่าคำสั่ง 'เรียกใช้อัตโนมัติ' ในรีจิสทรี มีรีจิสตรีคีย์สองคีย์หนึ่งตัวต่อผู้ใช้และหนึ่งตัวต่อคอมพิวเตอร์ที่สามารถกำหนดคำสั่งที่รันทุกครั้งที่ตัวประมวลผลคำสั่ง ( cmd.exe) เริ่มทำงาน cmd /?พวกเขากำลังที่ระบุไว้จริง

อย่างไรก็ตามลองเรียกใช้cmd /dและดูว่ามีข้อความเดียวกันหรือไม่ การ/dตั้งค่าสถานะหมายความว่า "ไม่เรียกใช้คำสั่ง AutoRun" ซึ่งทำให้สมบูรณ์แบบสำหรับการทดสอบนี้

ค่ารีจิสทรีคือ:

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

ตรวจสอบทั้งสองอย่าง โดยค่าเริ่มต้นไม่ควรมีอยู่ คุณอาจต้องการแก้ไขสตริงคำสั่งในของคุณหรือลบออกทั้งหมด

ที่เกี่ยวข้อง: http://blogs.msdn.com/b/oldnewthing/archive/2007/11/21/6447771.aspx


หรือคุณอาจมีแบตช์สคริปต์หรือการตั้งค่าที่คล้ายกันซึ่งมีชื่อcmdซึ่งจะถูกดำเนินการแทนcmdเนทีฟ ลองคำสั่งwhere cmdเพื่อพิมพ์รายการcmds ในพา ธ ของคุณตามลำดับของการดำเนินการ หากมีสิ่งใดที่นอกเหนือจาก / ก่อนหน้าC:\Windows\System32\cmd.exeคุณอาจต้องการลบหรือลบเส้นทางออกจากตัวแปรสภาพแวดล้อม PATH ของคุณ


ฉันพยายามเรียกใช้งานcmd /dและเป็นไปตามคาดปัญหาได้หายไป จากนั้นฉันตรวจสอบรีจิHKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRunสตรี้และพบว่ามีคำสั่งเกี่ยวกับ ANSICON ฉันไม่สามารถลบมันได้ในครั้งสุดท้ายที่ฉันลบมัน ฉันเพิ่งลบกุญแจ! นี่คือคำตอบที่ยอดเยี่ยม!
nmenego
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.