いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Goメモ-261 (go install 時に一時的に別の場所にインストールする)

概要

以下、自分用のメモです。たまーに使うときに、いつも忘れているのでここにメモメモ。。。

go install で何かのコマンドとかをインストールする場合、そのまま実行すると "$(go env GOPATH)/bin" の下に配置されます。

でも、たまに一時的に別の場所に置きたいときもあります。

個人的に task というGoで作られたタスクランナーが好きで良く利用しているのですが

これをプロジェクトの下にサクッと置きたいときとかに、たまに使っています。

特段変なことはなくて、単純に GOBIN 環境変数の値を一時的に変更すればオッケイです。

env GOBIN=/path/to/somewhere go install なにか

試してみる

$ mkdir bin

#
# GOBINを一時的に変更して go install 実行
#
$ env GOBIN="${PWD}/bin" go install github.com/go-task/task/v3/cmd/task@latest
go: downloading github.com/go-task/task/v3 v3.17.0
go: downloading mvdan.cc/sh/v3 v3.6.0-0.dev.0.20220704111049-a6e3029cd899
go: downloading golang.org/x/exp v0.0.0-20220930202632-ec3f01382ef9
go: downloading gopkg.in/yaml.v3 v3.0.1
go: downloading github.com/fatih/color v1.13.0
go: downloading github.com/sajari/fuzzy v1.0.0
go: downloading github.com/mitchellh/hashstructure/v2 v2.0.2
go: downloading github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0
go: downloading github.com/joho/godotenv v1.4.0
go: downloading github.com/mattn/go-colorable v0.1.9
go: downloading github.com/mattn/go-isatty v0.0.14
go: downloading golang.org/x/term v0.0.0-20210927222741-03fcf44c2211

#
# ちゃんと置かれている
#
$ ls bin
task


#
# 実行できるか確認
# 
$ "${PWD}/bin/task" --init
Taskfile.yaml created in the current directory

$ "${PWD}/bin/task"
Hello, World!

参考情報

Go言語による並行処理

Go言語による並行処理

Amazon


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。