Linux/Mac命令行中动态设置Golang的GOPATH工作路径

henrylee2cn · · 5046 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

Gopher们经常会遇到在多个$GOPATH来回切换工作的场景,每次切换都有手动修改$GOPATH才能编译运行当前项目,很是不方便!!那么有没有自动修改$GOPATH的方法呢?答案当然是肯定的!

本人在 Linux/Mac的命令行通过配置 `~/.zshrc` 文件实现了在窗口启动及调用cd命令时自动重置$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
        echo '$GOPATH:'$GOPATH
    fi
fi
}
setgopath

function cd_and_setgopath() {
cd $1
setgopath
}
alias cd='cd_and_setgopath'

步骤三:使配置生效

source ~/.zshrc

 


有疑问加站长微信联系(非本文作者)

本文来自:开源中国博客

感谢作者:henrylee2cn

查看原文:Linux/Mac命令行中动态设置Golang的GOPATH工作路径

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

5046 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传