Unten ist die Umgebung auf dem Mac:
~$
~$
~$ echo $0
-bash
~$
~$
~$
~$
~$
~$ cat /etc/paths.d/go
/usr/local/go/bin
~$
~$ cat /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/Users/MYUSER/go/bin
~$
~$
~$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/MYUSER/go/bin:/usr/local/go/bin
~$
~$ uname -a
Darwin XYXYXYXXYX 19.6.0 Darwin Kernel Version 19.6.0: Mon Apr 12 20:57:45 PDT 2021; root:xnu-6153.141.28.1~1/RELEASE_X86_64 x86_64
~$
~$ which go
/usr/local/go/bin/go
~$
~$
~$
~$ go version
-bash: /usr/local/bin/go: No such file or directory
~$
~$
~$
~$ /usr/local/go/bin/go version
go version go1.16.4 darwin/amd64
~$
~$
Ich habe vor der Installation der neuen Version v1.16, die rm -rf /usr/local/go
Binärdateien installiert,rm /usr/local/bin/go
go
/usr/local/go/bin
Wie lässt sich go version
der Befehl zum Laufen bringen?
Antwort1
In dem Snippet, das Sie in Ihrer Frage gepostet haben, heißt es:
~$ which go
/usr/local/go/bin/go
which
gibt an, dass sich die Go-Binärdatei im Verzeichnis /usr/local/go/bin befindet (siehe auchWarum nicht „welches“ verwenden? Was soll man dann verwenden?), aber Bash versucht, aus dem Verzeichnis /usr/local/bin ausgeführt zu werden:
~$ go version
-bash: /usr/local/bin/go: No such file or directory
Dies ist wahrscheinlich der Ort, an dem go
sich die Binärdatei befand, bevor Sie sie verschoben oder entfernt haben. In solchen Situationen hash -r
kann das Ausführen das Problem beheben help hash
:
-r alle gespeicherten Standorte vergessen