“ /”,“ ./”,“ ../” แสดงถึงอะไรเมื่อให้เส้นทาง


32

"/", "./", "../" หมายถึงอะไรขณะให้เส้นทาง

คำตอบ:


45

ไดเร็กทอรีรูทไดเร็กทอรีการทำงานปัจจุบันและไดเร็กทอรีพาเรนต์ตามลำดับ


45

ความหมายของเส้นทาง:

  • / เป็นรากของไดรฟ์ปัจจุบัน
  • ./ เป็นไดเรกทอรีปัจจุบัน
  • ../ เป็นพาเรนต์ของไดเรกทอรีปัจจุบัน

12

ให้แม่นยำ:

"/" เป็นเส้นทางที่เริ่มต้นด้วย / และทำให้เป็นเส้นทางที่แน่นอน ดังนั้นเราจำเป็นต้องเริ่มต้นในรูทของระบบไฟล์และนำทางไปยังโฟลเดอร์ที่กำหนดตามชื่อในขณะที่ชื่อถูกคั่นด้วย / s (เพราะนี่คือตัวคั่นพา ธ unix)
ดังนั้น / เป็นรากของระบบไฟล์ที่ไม่มีโฟลเดอร์เข้าหลังจากนี้และ / อธิบายถึงรูทของระบบไฟล์

./ ไม่ได้เริ่มต้นด้วย / และดังนั้น. / ไม่สามารถเป็นชื่อไฟล์ที่แน่นอน ดังนั้นจึงเป็นชื่อระบบไฟล์ที่เกี่ยวข้อง ดังนั้นเราต้องเริ่มต้นด้วยไดเรกทอรีการทำงานปัจจุบันและใช้การดำเนินการนำทางซึ่งคั่นด้วยตัวแยกเส้นทางอีกครั้ง ในกรณีนี้การดำเนินการคือ "." ซึ่งหมายถึง: อยู่ในโฟลเดอร์ปัจจุบัน (ดังนั้นจะต้องพิมพ์. / foo เพื่อดำเนินการ foo ในไดเรกทอรีปัจจุบันหาก. ไม่ได้อยู่ใน path-variable) หลังจาก "อยู่ในโฟลเดอร์ปัจจุบัน" จะไม่มีสิ่งใดเกิดขึ้นดังนั้น. / อธิบายไดเรกทอรีการทำงานปัจจุบัน

รับความรู้ที่ว่า .. หมายถึง: ไปที่โฟลเดอร์หลัก .. / ควรง่ายต่อการอนุมานและถูกทิ้งไว้เป็นแบบฝึกหัด


8
  • / เป็นโฟลเดอร์รูทของระบบไฟล์
  • ./ มักจะหมายถึงโฟลเดอร์ปัจจุบันที่โปรแกรมหรือสคริปต์ของคุณอยู่โดยปกติจะเป็นโฟลเดอร์เดียวกับไฟล์ที่คุณเรียกใช้
  • ../ หมายถึงโฟลเดอร์ด้านบนโฟลเดอร์ปัจจุบัน

4

เครื่องหมายทับ/เป็นตัวคั่นไดเรกทอรี ในทุกไดเรกทอรีมีสองไดเรกทอรีคือ.(ไดเรกทอรีปัจจุบัน) และ..(ไดเรกทอรีหลัก)

หากเส้นทางเริ่มต้นด้วยเครื่องหมายทับแสดงว่าเป็นรากของระบบไฟล์ ถ้าคุณไม่ใส่เครื่องหมายสแลชในจุดเริ่มต้น./(เทียบกับไดเรกทอรีปัจจุบัน) จะถือว่า

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