Ho diversi progetti che mi richiedono di cambiare le versioni di Java / Grails / Maven. Sto cercando di gestirlo con alcuni script che potrebbero apportare le modifiche. Per esempio:
#!/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
Quando questo viene eseguito, cambia correttamente il PERCORSO nel contesto dello script, ma lo script termina e non è stata apportata alcuna modifica.
Come posso eseguire uno script in modo da cambiare il PERCORSO per la shell in cui sto attualmente lavorando?
Sto usando Cygwin.
source
funziona solo perbash
. Uscita perksh
:/bin/ksh: source: not found
persh
:sh: 0: source: not found
. La risposta seguente dovrebbe essere considerata per queste shell.