Có và không. Trong môi trường POSIX, các tiện ích phải hoạt động như được mô tả bởi đặc tả. Trong thực tế, điều này có nghĩa là các phiên bản phù hợp của các tiện ích phải có mặt $PATH
. Tuy nhiên, khi chạy chương trình của bạn trên hệ thống tuân thủ POSIX, bạn có thể đang chạy chương trình trong môi trường không tuân thủ. Trong thực tế, điều thường xảy ra là HĐH có chế độ kế thừa và chế độ POSIX và ở chế độ kế thừa theo mặc định. Tệ hơn là thiếu một số lệnh, chế độ kế thừa có xu hướng không tương thích trong chúng, chẳng hạn như các tùy chọn có ý nghĩa khác nhau.
Bạn có thể lấy một tốt PATH
với getconf
. Tất nhiên, đó là khó khăn, vì getconf
trong bản gốc $PATH
có thể không phải là một trong những quyền. Lệnh sử dụng ứng dụng cho lệnh hiển thị cách thực hiện:
command -p getconf PATH
Theo như tôi hiểu đặc tả, điều này là không cần thiết nếu bạn đang chạy chương trình của mình trong môi trường tuân thủ POSIX; và nếu bạn không chạy chương trình của mình trong môi trường tuân thủ POSIX, POSIX sẽ không áp dụng. Tuy nhiên, việc sử dụng ứng dụng này có thể được coi là một khuyến nghị: nếu điều này không hiệu quả, bạn có thể cảm thấy có quyền khiếu nại với nhà cung cấp của mình rằng bất cứ điều gì họ đang làm liên quan đến thư của thông số POSIX, họ không tuân thủ tinh thần của nó.
getconf PATH
trong phần sử dụng ứng dụng. Cảm ơn!