मेरे पास कई परियोजनाएं हैं जिनके लिए मुझे जावा / ग्रेल्स / मावेन के संस्करणों को बदलने की आवश्यकता है। मैं इसे कुछ स्क्रिप्ट के साथ संभालने की कोशिश कर रहा हूं जो बदलाव लाएगा। उदाहरण के लिए:
#!/bin/sh
export JAVA_HOME=/cygdrive/c/dev/Java/jdk1.5.0_22
export PATH=$JAVA_HOME/bin:$PATH
export GRAILS_HOME=/cygdrive/c/dev/grails-1.0.3
export PATH=$GRAILS_HOME/bin:$PATH
export MAVEN_HOME=/cygdrive/c/dev/apache-maven-2.0.11
export PATH=$MAVEN_HOME/bin:$PATH
which java
which grails
which mvn
जब यह निष्पादित होता है, तो यह स्क्रिप्ट के संदर्भ में PATH को सफलतापूर्वक बदल देता है, लेकिन फिर स्क्रिप्ट समाप्त हो जाती है, और कोई भी परिवर्तन पूरा नहीं हुआ है।
जिस शेल में मैं वर्तमान में काम कर रहा हूं, उसके लिए मैं एक पटकथा को कैसे बदल सकता हूं?
मैं Cygwin का उपयोग कर रहा हूं।
source
केवल के लिए काम करता हैbash
। के लिए आउटपुटksh
:/bin/ksh: source: not found
, के लिएsh
:sh: 0: source: not found
। इन गोले के लिए नीचे दिए गए जवाब पर विचार किया जाना चाहिए।