นี่เป็นเพียงคำถามเกี่ยวกับคำศัพท์เท่านั้น
มันมาจากการสอบปฏิบัติจากหนังสือเตรียมการของLPIC คำตอบที่ถูกต้องตามหนังสือคือนั่น~/Documents
คือไดเรกทอรีที่สัมพันธ์กันเพราะมันสัมพันธ์กับไดเรกทอรีบ้าน
อย่างไรก็ตามหนังสือเล่มนี้มีอัตราส่วนของความผิดพลาดและความผิดพลาดที่น่านับถือดังนั้นฉันจึงไม่สามารถรับทุกสิ่งที่เขียนไว้ที่นั่นได้ ที่นี่ฉันไม่เห็นด้วยเพราะสำหรับฉัน~
ทำหน้าที่เป็นตัวแปรที่ขยายโดยเชลล์ในเนื้อหาของ$HOME
ตัวแปรหรือเส้นทางไดเรกทอรีบ้านของผู้ใช้ปัจจุบัน (cf. man bash
) ดังนั้นเส้นทาง/home/myuser/Documents
ที่แท้จริงจึงเป็นไดเรกทอรีแน่นอน
แม้แต่Wikipediaครั้งเดียวก็ดูเหมือนว่าฉันไม่ได้ช่วยในหัวข้อนี้ (แม้ว่ามันจะยืนยันว่าหนังสือเล่มนี้ผิดกับเรื่องนี้):
พา ธ สัมบูรณ์หรือพา ธ เต็มไปยังตำแหน่งเดียวกันในระบบไฟล์โดยไม่คำนึงถึงไดเร็กทอรีการทำงานปัจจุบัน หากต้องการทำเช่นนั้นจะต้องมีไดเรกทอรีราก
ในทางตรงกันข้ามเส้นทางสัมพัทธ์จะเริ่มต้นจากไดเรกทอรีทำงานที่ให้มาโดยหลีกเลี่ยงความจำเป็นที่จะต้องระบุเส้นทางที่สมบูรณ์
ที่นี่อีกครั้งฉันไม่เห็นด้วย: ตามคำนิยามนี้เส้นทาง/opt/kde3/bin/../lib
ที่ไม่ขึ้นอยู่กับไดเรกทอรีงานปัจจุบันควรเป็นสิ่งที่แน่นอน แต่ความเข้าใจในปัจจุบันของฉันตรงกับผู้เขียนหนังสือทำให้เส้นทางนี้เป็นญาติ
ค้นหาเว็บอย่างรวดเร็วเป็นเพียงการเพิ่มความยุ่งยากของฉันตามพจนานุกรมเว็บสเตอร์ :
absolute path - พา ธ ที่สัมพันธ์กับไดเร็กทอรีรูท อักขระตัวแรกต้องเป็นตัวคั่นชื่อพา ธ
ดังนั้น$HOME/Documents
หรือเพียงแค่$HOME
จะไม่ถือว่าเป็นไดเรกทอรีที่แน่นอน? คำจำกัดความนี้หมายถึงการขยายตัวของตัวแปรหรือไม่? ~
ตัวละครของเชลล์ล่ะ? มีคำจำกัดความที่น่าเชื่อถือของไดเรกทอรีเปรียบเทียบกับสัมบูรณ์ที่ฉันสามารถหาที่ไหนสักแห่งและฉันผิดไปตลอดทาง?
~/foo
เส้นทางญาติ สิ่งที่คุณได้รับคือความแตกต่างระหว่างการเข้ารหัสและการกำหนดพารามิเตอร์ ดูคำตอบของฉันสำหรับรายละเอียดเพิ่มเติม
~/Documents
และ$HOME/Documents
ไม่ใช่เส้นทาง พวกเขาระบุเส้นทาง (สัมบูรณ์) หลังจากการขยาย แต่ไม่ใช่เส้นทางเอง ฉันคิดว่าเห็นด้วยกับจำนวนผู้ใช้ Unix / Linux ที่ใช้คำศัพท์ แต่ไม่ต้องสงสัยเลยว่าสตริงเหล่านั้นจะถูกเรียกว่าเส้นทางด้วยตนเอง
/
ที่เราเรียกว่าสัมบูรณ์ ดังนั้นทุกอย่างเริ่มต้นจากสิ่งที่/
ฉันจะเรียกสัมบูรณ์ (แม้ว่านี้อยู่/usr/../etc
) และทุกสิ่งทุกอย่างที่ฉันจะเรียกญาติ (~/Doc
,Doc
,../john/Doc
,$HOME/...
, ... ) ประเด็นคือว่าสัมบูรณ์ควรทำงานโดยไม่คำนึงถึงไดเรกทอรีการทำงานปัจจุบันหรือผู้ใช้ปัจจุบัน ญาติสามารถทำงานได้เฉพาะในบางกรณีแคบ