सबसे पहले, किसी भी समय आप स्पष्ट रूप से दुभाषिया का उपयोग करके एक स्क्रिप्ट चलाते हैं, जैसे कि
$ python ./my_script.py
$ ksh ~/bin/redouble.sh
$ lua5.1 /usr/local/bin/osbf3
#!
लाइन हमेशा नजरअंदाज कर दिया है। #!
रेखा की एक यूनिक्स सुविधा है निष्पादन योग्य केवल स्क्रिप्ट नहीं, और आप उस पर पूर्ण में दस्तावेज देख सकते हैं के लिए आदमी पेजexecve(2)
। वहां आप पाएंगे कि निम्नलिखित शब्द #!
वैध निष्पादन योग्य का मार्गनाम होना चाहिए। इसलिए
python
उपयोगकर्ताओं पर जो कुछ भी है उसे निष्पादित करता है $PATH
। यह फ़ॉर्म पायथन इंटरप्रेटर के चारों ओर ले जाने के लिए लचीला है, जो इसे कुछ हद तक अधिक पोर्टेबल बनाता है, लेकिन इसका मतलब यह भी है कि उपयोगकर्ता मानक पायथन इंटरप्रिटर को इसके आगे कुछ डालकर ओवरराइड कर सकता है $PATH
। आपके लक्ष्यों के आधार पर, यह व्यवहार ठीक हो भी सकता है और नहीं भी।
आगे,
उस सामान्य मामले से संबंधित है जिसमें पायथन दुभाषिया स्थापित किया गया है /usr/bin
। यदि यह कहीं और स्थापित है, तो आप खो देते हैं। लेकिन यह एक अच्छा तरीका है ताकि आप यह सुनिश्चित कर सकें कि आप जैसा चाहते हैं वैसा ही संस्करण प्राप्त करें या और कुछ नहीं ("असफल-स्टॉप" व्यवहार), जैसे कि
आखिरकार,
python
स्क्रिप्ट चलने पर वर्तमान निर्देशिका में निष्पादन योग्य होने पर ही काम करता है। सिफारिश नहीं की गई।