`cd` ไม่เปลี่ยนไดเรกทอรีใน Windows 7 [ซ้ำ]


20

ซ้ำเป็นไปได้:
การใช้คำสั่ง cd ใน Windows Command Line ไม่สามารถนำทางไปยัง D: \
CMD cd ไปยังไดรฟ์อื่นยกเว้น C: \ ไม่ทำงาน

ฉันทำงานกับcmd.exeWindows 7 (ซึ่งต่างจาก Powershell) ฉันมีพาร์ติชั่น 2 ตัวในไดรฟ์ C มีระบบปฏิบัติการและโปรแกรมที่ติดตั้งและ D มีข้อมูลของฉัน ฉันพยายามcdจาก C ถึง D แต่คำสั่งไม่ยอมให้ฉัน:

C:\>cd D:\

C:\>

อย่างไรก็ตามเมื่อฉันพิมพ์dir D:\มันจะแสดงรายการเนื้อหาของ D อย่างถูกต้อง ทำไมถึงทำเช่นนี้และฉันจะแก้ไขได้อย่างไร Powershell ทำงานได้ดีดังนั้นฉันจึงสามารถใช้มันได้ แต่ฉันอยากจะรู้ว่าอะไรทำให้เกิดcmdความผิดพลาดได้


มีคนสร้างแท็ก msdos ได้ไหม ฉันคิดว่าคำถามนี้ใช้ได้กับ DOS ทุกรุ่นตั้งแต่ 1.0 ขึ้นไป ถ้าฉันจำได้อย่างถูกต้อง CP / M ไม่มีแนวคิดนี้ แต่คุณสามารถระบุไดรฟ์ที่แยกจากกันได้โดยการเตรียมตัวแปลงรายละเอียด: ชื่อไฟล์ ฉันคิดว่านี่เป็นสิ่งสำคัญเนื่องจากเป็นคำถามที่ถูกต้องสำหรับคนที่ไม่ได้อยู่ในยุค DOS และไม่ใช่คำถาม Windows 7 เช่นนี้
Stuart Woodward

@ StuartWoodward จริง ๆ แล้ว DOS 1.0 ไม่มีไดเรกทอรีย่อย - มีการแนะนำใน 2.0
Jesse Slicer

คำตอบ:


33

คุณต้องใช้เพียงแค่d: ไม่cd d:\

แก้ไข:มันเป็นไปได้ที่จะใช้cd /d d:เพื่อเปลี่ยนไดรฟ์โดยใช้ซีดี


ฉันไม่แน่ใจจริงๆว่าทำไมจึงตัดสินใจออกแบบนั้นและฉันกำลังมองหามัน แต่นั่นเป็นวิธีที่มันเป็นมาเสมอ
soandos

@ astay13 ดูการแก้ไข
soandos

1
@soandos cdย่อมาจาก "change directory" และD:เป็นไดรฟ์ไม่ใช่ไดเรกทอรี ดูคำตอบของ David สำหรับรายละเอียดเพิ่มเติม
Izkata

@Izkata ทำไมคุณไม่สามารถเปลี่ยนเป็นไดเรกทอรีในไดรฟ์อื่นโดยใช้ไวยากรณ์เดียวกับที่ใช้เพื่อไปยังโฟลเดอร์อื่น นั่นคือสิ่งที่ฉันพูด
soandos

มันจะเปลี่ยนไดเรกทอรี: เช่น: C: \> cd D: \ test จะเปลี่ยนไดเรกทอรีปัจจุบันบนดิสก์ D: เพื่อทดสอบ แต่พรอมต์ยังคงอยู่ใน C:
เซบาสเตียน Godelet

28

Windows ติดตามไดเรกทอรีการทำงานแยกต่างหากสำหรับแต่ละไดรฟ์ คุณอยู่ในไดรฟ์ 'C' ในไดเรกทอรีการทำงาน '\' เมื่อคุณพิมพ์cd d:\มันจะเปลี่ยนไดเรกทอรีการทำงานของคุณสำหรับไดรฟ์ 'D' เป็น '\' และจะไม่มีผลกับไดเรกทอรีการทำงานของไดรฟ์ C ของคุณ D:ไดรฟ์การเปลี่ยนแปลงเพียงชนิด คุณสามารถเปลี่ยนทั้งสองอย่างในเวลาเดียวกันกับพารามิเตอร์/dcd


3
ที่จริงแล้ว Windows ที่ผู้ถามบอกว่า xe กำลังทำงาน - Windows NT 6.1 - ไม่เคยมีมาก่อน - ตั้งแต่ปี 1993 - มีไดเรกทอรีการทำงานแยกต่างหากสำหรับแต่ละไดรฟ์ มีไดเร็กทอรีการทำงานหนึ่งรายการต่อกระบวนการ ลักษณะของไดเรกทอรีการทำงานหลายข้ามหลายไดรฟ์เป็นนิยายดูแลโดยแปลคำสั่งไมโครซอฟท์และห้องสมุดรันไทม์ของภาษาโดยใช้ตัวแปรสภาพแวดล้อมที่ซ่อนอยู่
JdeBP


@JdeBP ตัวแปรสภาพแวดล้อมที่ซ่อนอยู่ซึ่งติดตามไดเรกทอรีการทำงานแยกต่างหากสำหรับแต่ละไดรฟ์ และล่ามคำสั่งของ Microsoft และไลบรารีรันไทม์ของภาษานั้นเป็นส่วนหนึ่งของ Windows หรือไม่
David Schwartz

1

ควรสังเกตว่าpushd(เช่นpushd D:\) จะเปลี่ยนไดรฟ์เสมอ


นี่จะเป็นความคิดเห็นที่ยอดเยี่ยมสำหรับคำถาม แต่ไม่ตอบคำถาม
Stuart Woodward
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.