Es gibt verschiedene realpathBefehle.
Das realpathDienstprogramm ist ein Wrapper um die realpathBibliotheksfunktionen und wurde viele Male neu erfunden .
Debian verwendet , um ein erhalten realpathPaket ( getrennt von dwwwda holzig ) , die außer in Bezug auf Verpackung und Dokumentation seit 2001 nicht geändert hat, sondern wurde nun auslaufen. Dieses Hilfsprogramm war veraltet, weil es jetzt mehr Standardalternativen (GNU readlinkund bald GNU realpath) gibt, aber zu der Zeit hatten die GNU-Hilfsprogramme überhaupt keine readlink. Diese Implementierung realpathunterstützt einige options, um die Auflösung symbolischer Links zu verhindern oder eine nullterminierte Ausgabe zu erzeugen.
BusyBox enthält auch einen eigenen realpathBefehl (der keine Option verwendet).
GNU coreutils hat im Januar 2012 einen realpathBefehl in Version 8.15 eingeführt . Dies ist ein kompatibler Ersatz für BusyBox und Debian realpathund hat auch viele Optionen gemeinsam mit GNU readlink.
realpathhat den gleichen Effekt wie readlink -fbei GNU readlink. Was die beiden Befehle (oder vielmehr die verschiedenen realpathBefehle readlink -f) unterscheidet, sind die zusätzlichen Optionen, die sie unterstützen.
GNU realpathist nicht veraltet; es hat das gegenteilige problem: es ist zu neu, um überall verfügbar zu sein. Debian ließ GNUrealpath aus seinem coreutilsPaket aus und blieb bei seinem eigenen realpath. Ich weiß nicht warum, da GNU realpathein Ersatz sein sollte. Ab Debian Jessie und Ubuntu 16.04 wird jedoch GNU realpathverwendet.
Auf Linux-Systemen empfiehlt es sich derzeit, einen Pfad zu kanonisieren, der möglicherweise symbolische Links enthält readlink -f.
BSD-Systeme haben einen readlinkBefehl mit anderen Fähigkeiten als GNU readlink. Insbesondere hat BSD readlinkkeine Möglichkeit, Pfade zu kanonisieren, sondern durchläuft nur den ihm übergebenen Symlink.
readlinkÜbrigens hatte das gleiche Problem - es wurde auch viele Male erfunden (dieses Dienstprogramm nicht hinzuzufügen, als symbolische Links zu Unix hinzugefügt wurden, war eine bedauerliche Auslassung). Es hat sich jetzt in mehreren Implementierungen mit vielen inkompatiblen Flags (insbesondere BSD vs. GNU) stabilisiert.
readlink -fwar lange vor GNU in OpenBSD. Alle NetBSD, FreeBSD und OpenBSD haben jetztreadlink -f(Ihr Link erwähnt es sogar).realpathwar lange Zeit in FreeBSD und IRIX (weiß nicht, ob es älter ist als das in Debian). HPUX und IRIX haben es auchreadlink, wenn auch nicht-f. DasrealpathPaket in Debian experimental ist jetzt das von coreutils (als Experiment, um zu sehen, ob es etwas kaputt macht). Das dwww verhält sichrealpatheher wiereadlink -edas GNUreadlink -f, es ist also kein vollständiger Ersatz