मैं कुछ मुद्दों पर भाग गया जब कुछ स्थापना स्क्रिप्ट चला रहे थे जहां उन्होंने शिकायत की थी bad interpreter।
इसलिए मैंने एक तुच्छ उदाहरण दिया, लेकिन मैं यह पता नहीं लगा सकता कि समस्या क्या है, नीचे देखें।
#!/usr/bin/env bash
echo "hello"
निम्न त्रुटि में परिणाम के ऊपर स्क्रिप्ट निष्पादित करना
[root@ech-10-24-130-154 dc-user]# ./junk.sh
bash: ./junk.sh: /usr/bin/env: bad interpreter: No such file or directory
/usr/bin/envफ़ाइल मौजूद है, नीचे देखें:
[root@ech-10-24-130-154 dc-user]# ls -l /usr/bin/env
lrwxrwxrwx 1 root root 13 Jan 27 04:14 /usr/bin/env -> ../../bin/env
[root@ech-10-24-130-154 dc-user]# ls -l /bin/env
-rwxr-xr-x 1 root root 23832 Jul 16 2014 /bin/env
[root@ech-10-24-130-154 dc-user]#
अगर मैं नियमित शेबंग का उपयोग करने के लिए स्क्रिप्ट को बदल देता हूं तो #!/bin/bashयह कोई समस्या नहीं है। #!/bin/env bashसाथ ही काम करता है।
पोर्टेबल शेबंग को काम करने की अनुमति देने के लिए पर्यावरण से क्या गायब है?
ls -lL /usr/bin/envरिटर्न ls: cannot access /usr/bin/env: No such file or directoryइसलिए मुझे लगता है मैं सांकेतिक लिंक को बदलने के लिए की आवश्यकता है? क्या मैं इसे इंगित कर सकता हूं /bin/env?
env --version 8.4 है और OS Red Hat Enterprise Linux सर्वर रिलीज 6.6 है।