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$

Posted in PHP

发表评论

您的电子邮箱地址不会被公开。