Sie können Folgendes verwenden:
PATH="$PATH:${GOPATH%%:*}/bin"
Oder
PATH="$PATH:${GOPATH%:*}/bin"
Beides funktioniert, weil es höchstens einen :
geben kann .
Der Teil nach :
wird entfernt . In Ihrem ersten Fall wird also das zweite Verzeichnis entfernt und in Ihrem zweiten Fall wird es kein Muster wie :*
geben , sodass der Verzeichnisname nicht geändert wird.
PATH="$PATH:${GOPATH%%:*}/bin"
Das Sternchen ist ein Glob, kein regulärer Ausdruck. Zwei Prozentzeichen bedeuten, dass das Maximum, mit dem es übereinstimmen kann, von hinten entfernt wird, sodass Sie selbst bei drei oder mehr Verzeichnissen nur das erste erhalten würden.
Wenn es nichts zu entfernen gibt, wird nichts entfernt, sodass Sie den einzigen Pfad erhalten, wenn es nur einen gibt.