มีหลายrealpath
คำสั่งอยู่รอบ ๆ
realpath
ยูทิลิตี้เป็นเสื้อคลุมรอบrealpath
การทำงานห้องสมุดและได้รับนวัตกรรมใหม่หลายครั้ง
Debian ใช้ในการรักษาrealpath
แพคเกจ ( แยกออกจากdwww
ตั้งแต่วู้ดดี้ ) ซึ่งไม่ได้เปลี่ยนยกเว้นเกี่ยวกับการบรรจุภัณฑ์และเอกสารตั้งแต่ปี 2001 แต่ตอนนี้ได้รับการค่อย ๆ ออกมา ยูทิลิตี้นี้เลิกใช้แล้วเนื่องจากขณะนี้มีทางเลือกมาตรฐานมากขึ้น (GNU readlink
และอีกไม่นาน GNU realpath
) แต่ในขณะนี้ยูทิลิตี้ GNU ไม่ได้มีreadlink
เลย การนำไปใช้งานของการrealpath
สนับสนุนบางอย่างoptions
เพื่อป้องกันการแก้ไขการเชื่อมโยงสัญลักษณ์หรือสร้างเอาต์พุตที่สิ้นสุดด้วยค่า null
BusyBoxยังมีrealpath
คำสั่งของตัวเอง(ซึ่งไม่มีตัวเลือก)
coreutils GNUแนะนำrealpath
คำสั่งในรุ่น 8.15ในเดือนมกราคม 2012 นี้เป็นทดแทนที่รองรับสำหรับ BusyBox และ Debian ของrealpath
และยังมีตัวเลือกมากมายในการร่วมกันกับ readlink
GNU
realpath
มีผลเช่นเดียวreadlink -f
กับ readlink
GNU สิ่งที่แยกความแตกต่างระหว่างสองคำสั่ง (หรือมากกว่าrealpath
คำสั่งต่าง ๆreadlink -f
) เป็นตัวเลือกพิเศษที่สนับสนุน
GNU realpath
ไม่ได้ถูกปฏิเสธ มันมีปัญหาตรงข้าม: มันใหม่เกินไปที่จะสามารถใช้ได้ทุกที่ Debian ใช้ในการละเว้น GNUrealpath
จากของแพคเกจและติดกับตัวของมันเองcoreutils
realpath
ฉันไม่รู้ว่าทำไมเนื่องจาก GNU realpath
ควรเป็นแบบดรอปดาวน์ อย่างไรก็ตามสำหรับ Debian jessie และ Ubuntu 16.04 realpath
นั้นใช้GNU
บนระบบลินุกซ์ในขณะนี้ทางออกที่ดีที่สุดของคุณเพื่อ canonicalize readlink -f
เส้นทางที่อาจมีการเชื่อมโยงสัญลักษณ์เป็น
ระบบ BSD มีreadlink
คำสั่งที่มีความสามารถที่แตกต่างจาก readlink
GNU โดยเฉพาะอย่างยิ่ง BSD readlink
ไม่มีตัวเลือกในการกำหนดเส้นทางให้เป็นมาตรฐานมันจะส่งผ่าน symlink ที่ส่งไปเท่านั้น
readlink
บังเอิญมีปัญหาเดียวกัน - มันถูกคิดค้นขึ้นหลายครั้ง (ไม่ได้เพิ่มยูทิลิตี้นี้เมื่อเพิ่มลิงก์สัญลักษณ์ที่ถูกเพิ่มไปยัง Unix เป็นการละเว้นที่น่าเสียใจ) ตอนนี้มันมีความเสถียรในการใช้งานหลายอย่างด้วยการตั้งค่าสถานะที่เข้ากันไม่ได้มากมาย (โดยเฉพาะอย่างยิ่ง BSD เทียบกับ GNU)
readlink -f
อยู่ใน OpenBSD นานก่อน GNU ขณะนี้ NetBSD, FreeBSD และ OpenBSD ทั้งหมดมีreadlink -f
( ลิงก์ของคุณยังกล่าวถึง)realpath
ได้รับใน FreeBSD และ IRIX เป็นเวลานาน (ไม่ทราบว่ามันมาก่อนใน Debian) HPUX และ IRIX ก็มีreadlink
เช่น-f
กันrealpath
แพคเกจในเดทดลองในขณะนี้คือหนึ่งจาก coreutils (ตามการทดสอบเพื่อดูว่าจะแบ่งสิ่ง) dwwwrealpath
ทำหน้าที่เหมือนกันมากreadlink -e
ในขณะที่ GNU ชอบreadlink -f
ดังนั้นจึงไม่ใช่