ความแตกต่างระหว่าง " C:FILE.TXT
" และ " C:\FILE.TXT
" คืออะไร?
พวกเขาเหมือนกันหรือไม่
ความแตกต่างระหว่าง " C:FILE.TXT
" และ " C:\FILE.TXT
" คืออะไร?
พวกเขาเหมือนกันหรือไม่
คำตอบ:
C:FILE.TXT
อ้างถึงFILE.TXT
ในไดเรกทอรีปัจจุบันของไดรฟ์C:
C:\FILE.TXT
อ้างถึงFILE.TXT
ในไดเรกทอรีรากของไดรฟ์C:
( C:\
)
พวกเขาไม่เหมือนกัน
แก้ไข: ตัวอย่างพรอมต์คำสั่ง:
Windows จดจำไดเรกทอรีการทำงานปัจจุบันสำหรับแต่ละไดรฟ์ สมมติว่าคุณกำลังทำงานในไดเรกทอรีC:\UTILS
และจากนั้นคุณเปลี่ยนเป็นไดรฟ์F:
แล้วไปที่ไดเรกทอรีBIN
ในF:
:
C: \ UTILS> F: F: \> CD BIN F: \ BIN>
ณ จุดนี้ไดเร็กทอรีการทำงานปัจจุบันC:
ยังคงอยู่C:\UTILS
และไดเร็กทอรีการทำงานปัจจุบันสำหรับF:
คือF:\BIN
คุณสามารถยืนยันสิ่งนี้ได้ด้วยCD
คำสั่ง:
F: \ BIN> CD C: C: \ UTILS F: \ bin>
โปรดทราบว่าคุณไม่ได้เปลี่ยนไดรฟ์ทำงานกลับไปเป็นC:
โดยใช้คำสั่งนี้
ดังที่คุณจะเห็นจากตัวอย่างคำสั่งต่อไปนี้การใช้แบ็กสแลช ( \
) ทันทีหลังจากชื่อไดรฟ์ ( X:
) ทำให้ตำแหน่งของไฟล์สมบูรณ์ การทำเครื่องหมายแบ็กสแลชโดยอัตโนมัติเกี่ยวข้องกับไดเรกทอรีการทำงานปัจจุบันของไดรฟ์
F: \ BIN>คัดลอก F: PROGRAM.EXE C: คัดลอก * F: \ BIN \ PROGRAM.EXE ถึง C: \ UTILS \ PROGRAM.EXE F: \ BIN>คัดลอก F: PROGRAM.EXE C: \ คัดลอก * F: \ BIN \ PROGRAM.EXE ถึง C: \ PROGRAM.EXE F: \ BIN>คัดลอก F: \ PROGRAM.EXE C: คัดลอก * F: \ PROGRAM.EXE ถึง C: \ UTILS \ PROGRAM.EXE F: \ BIN>คัดลอก F: PROGRAM.EXE C: NEW \ NEW_PROG.EXE สำเนา * และเปลี่ยนชื่อ F: \ bin \ PROGRAM.EXE ถึง C: \ BIN \ NEW \ NEW_PROG.EXE
* 'สำเนา' หมายถึง 'ความพยายามในการคัดลอก' คำสั่งเหล่านี้จะล้มเหลวหากโครงสร้างไดเร็กทอรีสันนิษฐานและไดเร็กทอรีการทำงานปัจจุบันไม่มีอยู่หรือถูกเปลี่ยนแปลงโดยกระบวนการอื่น
ในกรณีที่ไดเร็กตอรี่ทำงานนั้นเป็นไดเร็กตอรี่รูท (เช่น. C:\
) C:PROGRAM.EXE
และC:\PROGRAM.EXE
ชี้ไปที่ตำแหน่งเดียวกัน, แต่มันมาถึงด้วยวิธีการต่าง ๆ .
cmd.exe
เชลล์ ในโปรแกรมอื่นหากมีการกำหนดไดรฟ์ที่แตกต่างจากปัจจุบันข้อมูลจำเพาะของพา ธ ดังกล่าวจะสัมพันธ์กับรูทของไดรฟ์นั้นเสมอ
int x
เป็นเช่นเดียวกับint y
; พวกเขาไม่ใช่ === แต่สามารถเป็น == หากทั้งคู่มีค่าเท่ากัน @grawity แน่นอนว่าแอพ windows (Win32 ไม่ใช่แค่ NT) ไม่มี cwd ต่อไดรฟ์เนื่องจากไม่มีความหมายในบริบทนั้น ไม่ว่าจะเป็นอะไรมันก็แค่ cmd; ปพลิเคชันทั้งหมดคอนโซลมีมัน