zoukankan      html  css  js  c++  java
  • fish shell 下gopath的设置问题

    GOPATH可以设置多个工程目录,linux下用冒号分隔(必须用冒号,fish shell的空格分割会出错),windows下用分号分隔,但是go get 只会下载pkg到第一个目录,但是编译的时候会搜索所有的目录。

    在fish shell下,使用 set -x GOPATH  PATH1:PATH2:PATH3 来设置,不能使用 set -x GOPATH  PATH1 PATH2 PATH3, 这一点确实很特殊。

    fish shell 下还有另外一种自动方法,利用fish shell的function:

    1、先用 set -x default_GOPATH  go/default/gopath 来设置一个默认的gopath

    2、然后新建一个cd函数,位于 ~/.config/fish/functions/cd.fish:

    function cd
      builtin cd $argv
    
      set cdir (pwd)
      while [ "$cdir" != "/" ]
        if [ -e "$cdir/.gopath" ]
          set -x GOPATH $default_GOPATH:$cdir
          return 0
        end
        set cdir (dirname "$cdir")
      end
    
      set -x GOPATH $default_GOPATH
      return 0
    end

    但是这种方法并不推荐,因为有些时候切换目录不一定用到cd命令。

    另外,查看go的全部环境变量可以使用 go env 命令,看看自己设置的对不对。

  • 相关阅读:
    .net注册iis
    hdu 1081To The Max
    hdu 1312Red and Black
    hdu 1016Prime Ring Problem
    hdu 1159Common Subsequence
    hdu 1372Knight Moves
    hdu 1686Oulipo
    hdu 1241Oil Deposits
    hdu 1171Big Event in HDU
    hdu 4006The kth great number
  • 原文地址:https://www.cnblogs.com/welhzh/p/8846847.html
Copyright © 2011-2022 走看看