Ada beberapa realpath
perintah di sekitar.
The realpath
utilitas adalah pembungkus sekitar realpath
fungsi perpustakaan dan telah diciptakan kembali banyak kali .
Debian digunakan untuk memelihara realpath
paket ( terpisah dari dwww
sejak kayu ) yang tidak berubah kecuali mengenai pengemasan dan dokumentasi sejak 2001, tetapi sekarang telah dihapus. Utilitas ini sudah tidak digunakan lagi karena sekarang ada lebih banyak alternatif standar (GNU readlink
dan segera GNU realpath
), tetapi pada saat itu, utilitas GNU bahkan tidak memiliki readlink
sama sekali. Implementasi realpath
beberapa dukungan ini options
untuk mencegah resolusi tautan simbolis atau menghasilkan keluaran yang diakhiri dengan nol.
BusyBox juga menyertakan realpath
perintahnya sendiri (yang tidak memiliki opsi).
GNU coreutils memperkenalkan realpath
perintah dalam versi 8.15 pada Januari 2012. Ini adalah pengganti yang kompatibel untuk BusyBox dan Debian realpath
, dan juga memiliki banyak opsi yang sama dengan GNU readlink
.
realpath
memiliki efek yang sama readlink -f
dengan GNU readlink
. Yang membedakan kedua perintah (atau lebih tepatnya berbagai realpath
perintah dari readlink -f
) adalah opsi tambahan yang mereka dukung.
GNU realpath
tidak ditinggalkan; itu memiliki masalah yang berlawanan: itu terlalu baru untuk tersedia di mana-mana. Debian digunakan untuk menghilangkan GNUrealpath
dari coreutils
paketnya dan tetap dengan GNU sendiri realpath
. Saya tidak tahu mengapa, karena GNU realpath
harus menjadi pengganti drop-in. Namun pada Debian jessie dan Ubuntu 16.04, GNU realpath
digunakan.
Pada sistem Linux, saat ini, taruhan terbaik Anda untuk mengkanonik jalan yang mungkin mengandung tautan simbolik readlink -f
.
Sistem BSD memiliki readlink
perintah, dengan kemampuan berbeda dari GNU readlink
. Secara khusus, BSD readlink
tidak memiliki opsi untuk mengkanonik path, itu hanya melintasi symlink yang diteruskan ke sana.
readlink
, kebetulan, memiliki masalah yang sama - itu juga ditemukan berkali-kali (tidak menambahkan utilitas ini ketika tautan simbolis ditambahkan ke Unix adalah kelalaian yang disesalkan). Sekarang telah stabil di beberapa implementasi dengan banyak flag yang tidak kompatibel (khususnya BSD vs GNU).
readlink -f
berada di OpenBSD jauh sebelum GNU. Semua NetBSD, FreeBSD dan OpenBSD sekarang memilikireadlink -f
( tautan Anda bahkan menyebutkannya).realpath
telah berada di FreeBSD dan IRIX untuk waktu yang lama (tidak tahu apakah itu sudah ada sebelum Debian). HPUX dan IRIX juga memilikireadlink
, meskipun tidak-f
. Therealpath
paket di Debian eksperimental sekarang satu dari coreutils (sebagai percobaan untuk melihat kalau rusak hal). The dwwwrealpath
bertindak lebih sepertireadlink -e
sementara yang GNU sukareadlink -f
jadi itu bukan pengganti