Iya dan tidak. Dalam lingkungan POSIX, utilitas harus berperilaku seperti yang dijelaskan oleh spesifikasi. Dalam praktiknya, ini berarti bahwa versi yang sesuai dari utilitas harus ada $PATH
. Namun, saat menjalankan program Anda pada sistem yang mendukung POSIX, Anda mungkin menjalankannya di lingkungan yang tidak sesuai. Dalam praktiknya, yang sering terjadi adalah bahwa OS memiliki mode lama dan mode POSIX, dan secara default ada dalam mode lama. Lebih buruk daripada melewatkan beberapa perintah, mode warisan cenderung memiliki ketidakcocokan di dalamnya, seperti opsi dengan makna yang berbeda.
Anda dapat mengambil barang PATH
dengan getconf
. Tentu saja, ini rumit, karena getconf
yang asli $PATH
mungkin bukan yang benar. Penggunaan Aplikasi untuk perintah menunjukkan cara untuk melakukannya:
command -p getconf PATH
Sejauh yang saya mengerti spesifikasinya, ini tidak perlu jika Anda menjalankan program Anda di lingkungan yang sesuai dengan POSIX; dan jika Anda tidak menjalankan program Anda dalam lingkungan yang sesuai dengan POSIX, POSIX tidak berlaku. Namun, penggunaan aplikasi ini dapat dianggap sebagai rekomendasi: jika ini tidak berhasil, Anda dapat merasa berhak untuk mengeluh kepada vendor Anda bahwa apa pun yang mereka lakukan terkait dengan surat spesifikasi POSIX, mereka tidak mematuhi semangatnya.
getconf PATH
di bagian penggunaan aplikasi. Terima kasih!