Ubuntu上安装 gvm 导致 cd 命令失效
Ubuntu上安装 gvm 导致 cd 命令失效
安装成功之后,在 .bashrc 文件的最后引入了 gvm 脚本:
zhpj@zhpj-inspiron-16-7610:~$ tail -1 .bashrc
[[ -s "/home/zhpj/.gvm/scripts/gvm" ]] && source "/home/zhpj/.gvm/scripts/gvm"
zhpj@zhpj-inspiron-16-7610:~$
gvm 的最后是引入 gvm-default 脚本:
zhpj@zhpj-inspiron-16-7610:~$ cat .gvm/scripts/gvm
export GVM_ROOT=/home/zhpj/.gvm
. $GVM_ROOT/scripts/gvm-default
zhpj@zhpj-inspiron-16-7610:~$
zhpj@zhpj-inspiron-16-7610:~$ cat .gvm/scripts/gvm-default
unset GOROOT
unset GOARCH
unset GOOS
unset GOPATH
unset GOBIN
unset gvm_go_name
unset gvm_pkgset_name
mkdir -p "$GVM_ROOT/logs" > /dev/null 2>&1
mkdir -p "$GVM_ROOT/gos" > /dev/null 2>&1
mkdir -p "$GVM_ROOT/archive" > /dev/null 2>&1
mkdir -p "$GVM_ROOT/archive/package" > /dev/null 2>&1
mkdir -p "$GVM_ROOT/environments" > /dev/null 2>&1
export GVM_VERSION=$(cat "$GVM_ROOT/VERSION")
export PATH="$GVM_ROOT/bin:$PATH"
export GVM_PATH_BACKUP="$PATH"
[ -f "$GVM_ROOT/environments/default" ] && . "$GVM_ROOT/environments/default"
. "$GVM_ROOT/scripts/env/gvm"
. "$GVM_ROOT/scripts/env/cd" && cd .
zhpj@zhpj-inspiron-16-7610:~$
gvm-default 的最后一行 . "$GVM_ROOT/scripts/env/cd" && cd .
会导致默认的 cd 命令失效
将最后一行注释掉,重新 source 一下 .bashrc 也没生效
最后在 gvm-default
脚本的最后添加了一行 unset cd
zhpj@zhpj-inspiron-16-7610:~$ echo 'unset cd' >> .gvm/scripts/gvm-default
zhpj@zhpj-inspiron-16-7610:~$
zhpj@zhpj-inspiron-16-7610:~$ tail -2 .gvm/scripts/gvm-default
. "$GVM_ROOT/scripts/env/cd" && cd .
unset cd
zhpj@zhpj-inspiron-16-7610:~$
重新 source 一下
zhpj@zhpj-inspiron-16-7610:~$ source ~/.bashrc
zhpj@zhpj-virtual-machine:~$ gvm list
gvm gos (installed)
go1.17.13
go1.20.14
=> go1.23.4
go1.4
zhpj@zhpj-virtual-machine:~$
zhpj@zhpj-inspiron-16-7610:~$ cd software/
zhpj@zhpj-inspiron-16-7610:~/software$