Gopher們經常會遇到在多個$GOPATH來回切換工作的場景,每次切換都要手動修改$GOPATH才能編譯運行當前項目,很是不方便!!那麼有沒有自動修改$GOPATH的方法呢?答案當然是肯定的!
本人在 Linux/Mac的命令行通過配置 `~/.zshrc` 文件實現了在窗口啓動及調用`jj`命令時自動重置$GOPATH的功能。
思路是:
首先判斷當前目錄是否在某個 `src` 目錄下;
若在,則進一步判斷當前路徑對應的GOPATH是否已經設置到環境變量;
若沒有設置,則自動修改$GOPATH到當前路徑。
步驟一:打開 `~/.zshrc` 文件
vim ~/.zshrc
步驟二:將下面代碼拷貝到 `~/.zshrc` 文件中,並保存
function setgopath() {
currpath=`pwd`
gopath=${currpath%/src*}
if [[ $currpath != $gopath ]];then
if [[ $gopath != $GOPATH ]];then
export GOPATH=$gopath
export GOBIN=$gopath/bin
echo '$GOPATH:'$GOPATH
fi
fi
}
jj () {
cd $1
setgopath
}
步驟三:使配置生效
source ~/.zshrc