在 bash 中,我可以在每次 cd 进入 go 目录时强制执行 `cd src` 吗?

in bash can I force a `cd src` everytime I cd into a go directory?

我从不使用我的 bin 或 pkg golang 目录。所以当我这样做时:

cd go 我宁愿 BASH 假设我的意思是 cd go/src

我怎么知道 bash 每次都这样做?

function cd()
{
    test $# -eq 0 && return 0
    if [ `basename ` == "go" ]; then
        builtin cd "/src"
    else
        builtin cd "$@"
    fi
}

在你的 ~/.bashrc.

请注意,当 cd 进入您的 Go 目录时,您将无法使用命令行选项,因为理想情况下我们只会处理传递给 cd 的最后一个参数,但您在 POSIX shell(和 bash)中不容易做到这一点。