美文网首页
golang版本切换

golang版本切换

作者: robertzhai | 来源:发表于2022-04-10 09:38 被阅读0次

    背景

    • 公司的几个ws项目有的go版本升级到了1.17,有的还是1.13,总需要在不同的项目之间切换构建,为了方便切换版本,写了个shell 脚本通过sed来编辑修改 .bash_profile文件,方便不同版本进行切换

    切换脚本

    cat /usr/local/tools/go_version.sh

    #!/bin/bash
    
    ## sh ~/go_version.sh 17
    ## sh ~/go_version.sh 13
    
    back_file=""
    if (( "$(uname)"=="Darwin"   )) ;then
          # Mac OS X 操作系统 sed 替换配置文件版本 mac 需要 需要备份源文件 "_bak"
          back_file="_bak"
    elif (( "$(expr substr $(uname -s) 1 5)"=="Linux"  )) ;then
         # GNU/Linux操作系统
          back_file=""
    elif ((  "$(expr substr $(uname -s) 1 10)"=="MINGW32_NT" )) ;then
         # Windows NT操作系统
          back_file=""
    fi
    
    file='/Users/admin/.bash_profile'
    go17root='/usr/local/go/go17'
    go13root='/usr/local/go/go13'
    
    if (( "$1" == "17" )); then
        sed -i  "$back_file" "s#$go13root#$go17root#g" "$file"
    elif (( "$1" == "13" )); then
        sed -i  "$back_file" "s#$go17root#$go13root#g" "$file"
    
    else
        echo "invalid arg"
    fi
    
    

    alias

    • alias go17="sh /usr/local/tools/go_version.sh 17 "
    • alias go13="sh /usr/local/tools/go_version.sh 13 "

    切换

    • go17 切换到17版本
    • go13 切换到13版本
    • source ~/..bash_profile
    • go version 就能看到切换到对应版本了

    gvm 切换

    • 还有个gvm ,可以尝试

    相关文章

      网友评论

          本文标题:golang版本切换

          本文链接:https://www.haomeiwen.com/subject/eyvmsrtx.html