Skip to content

Instantly share code, notes, and snippets.

@rogpeppe
Last active August 4, 2023 07:07
Show Gist options
  • Star 6 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save rogpeppe/7de05eef4dd774056e9cf175d8e6a168 to your computer and use it in GitHub Desktop.
Save rogpeppe/7de05eef4dd774056e9cf175d8e6a168 to your computer and use it in GitHub Desktop.
go get binary@version
#!/bin/sh
# This command installs binaries at specified versions
# into $GOBIN, $GOPATH/bin or $HOME/bin.
# It assumes Go 1.11.
if [ $# = 0 ]; then
usage: vgoget cmdpackage[@version]... >&2
exit 2
fi
d=`mktemp -d`
cd "$d"
echo 'module temp' > go.mod
for i; do
pkg=`echo $i | sed 's/@.*//'`
go get "$i" &&
go install "$pkg" &&
echo installed `go list -f '{{.ImportPath}}@{{.Module.Version}}' "$pkg"`
done
rm -r "$d"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment