हां और ना। POSIX वातावरण में, उपयोगिताओं को विनिर्देश द्वारा वर्णित व्यवहार करना चाहिए। व्यवहार में, इसका मतलब है कि उपयोगिताओं के अनुरूप संस्करणों में मौजूद होना चाहिए $PATH। हालाँकि, जब आपका कार्यक्रम POSIX- अनुरूप प्रणाली पर चल रहा है, तो आप इसे गैर-अनुरूप वातावरण में चला सकते हैं। व्यवहार में, अक्सर ऐसा होता है कि ओएस में एक विरासत मोड और एक पॉसिक्स मोड है, और डिफ़ॉल्ट रूप से विरासत मोड में है। कुछ आदेशों को याद करने से बदतर, विरासत मोड में असंगतताएं होती हैं, जैसे विभिन्न अर्थों के साथ विकल्प।
आप के PATHसाथ एक अच्छा प्राप्त कर सकते हैं getconf। बेशक, यह मुश्किल है, क्योंकि getconfमूल $PATHसही नहीं हो सकता है। कमांड के लिए एप्लिकेशन उपयोग इसे करने का एक तरीका दिखाता है:
command -p getconf PATH
जहाँ तक मैं विनिर्देश को समझता हूँ, यह आवश्यक नहीं है यदि आप अपना कार्यक्रम POSIX-अनुरूप वातावरण में चला रहे हैं; और यदि आप POSIX- अनुरूप वातावरण में अपना कार्यक्रम नहीं चला रहे हैं, तो POSIX लागू नहीं होता है। हालांकि, इस एप्लिकेशन के उपयोग को एक सिफारिश के रूप में लिया जा सकता है: यदि यह काम नहीं करता है, तो आप अपने विक्रेता से शिकायत करने के लिए हकदार महसूस कर सकते हैं कि वे जो कुछ भी कर रहे हैं POSIX कल्पना के पत्र के बारे में, वे इसकी भावना का अनुपालन नहीं कर रहे हैं।
getconf PATHआवेदन उपयोग अनुभाग में। धन्यवाद!