golang

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
golang [2019/09/17 15:54] – [Go 関連] ともやんgolang [2025/05/02 10:38] (現在) – [Go言語] ともやん
行 1: 行 1:
-<html+====== Go言語 ====== 
-  <style+<WRAP logo
-    #go-logo img { +<WRAP v-align_mid zoomimg w180 x1_2
-      display: block; +{{ :golang:go-gopher-svgrepo-com.svg |Go Gopher SVG Vector}}\\ 
-      height: 10rem; +<WRAP desc fsizemin
-      max-height: 200px; +[[https://www.svgrepo.com/svg/373635/go-gopher|Go Gopher Vector SVG Icon - SVG Repo]] より\\
-      width: 250px; +
-      margin: 0 auto; +
-      object-fit: cover; +
-      object-position: 0 0; +
-    } +
-    #desc { +
-      min-width200px; +
-      overflow:hidden; +
-    } +
-  </style> +
-</html> +
-<html> +
-  <style> +
-    #go-logo img { +
-      display: block; +
-      height: 10rem; +
-      max-height: 200px; +
-      width: 250px; +
-      margin: 0 auto; +
-      object-fit: cover; +
-      object-position: 0 0; +
-    } +
-    #desc { +
-      min-width: 200px; +
-      overflow:hidden; +
-    } +
-    .clearfix:after { +
-      content: ""; +
-      display: block; +
-      height: 0; +
-      visibility: hidden; +
-      clear: both; +
-    } +
-    .clearfix { +
-      display: inline-table; +
-    } +
-    /* Hides from IE-mac \*/ +
-    * html .clearfix { +
-      height: 1%; +
-    } +
-    .clearfix { +
-      display: block; +
-    } +
-  </style+
-</html> +
-====== Go 関連 ====== +
-本家: [[https://golang.org/|The Go Programming Language]]\\ +
-<WRAP multi-columns class clearfix> +
-<WRAP left #go-logo> +
-{{:golang:golang_logo.png|Go Logo}}\\+
 </WRAP> </WRAP>
-<WRAP #desc>+</WRAP> 
 +<WRAP v-align_mid youtube><html> 
 +  <iframe width="480" height="270" src="https://www.youtube.com/embed/n8F55puGHIs?mute=1&autoplay=1&modestbranding=1&controls=1&rel=0&loop=1" 
 +          title="YouTube video player" frameborder="0" 
 +          allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" 
 +          referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe> 
 +</html></WRAP> 
 +</WRAP> 
 +本家: [[https://golang.org/|The Go Programming Language]]\\ 
 +ソースコード: [[https://github.com/golang/go|golang/go: The Go programming language]]\\ 
 Go はプログラミング言語の 1 つである。(コンパイラー言語) 2009 年、Google で Robert Griesemer、ロブ・パイク、ケン・トンプソンによって設計された。Go は、静的型付け、C言語の伝統に則ったコンパイル言語、メモリ安全性、ガベージコレクション、構造的型付け、CSP スタイルの並行性などの特徴を持つ。Go のコンパイラ、ツール、およびソースコードは、すべてフリーかつオープンソースである。\\ Go はプログラミング言語の 1 つである。(コンパイラー言語) 2009 年、Google で Robert Griesemer、ロブ・パイク、ケン・トンプソンによって設計された。Go は、静的型付け、C言語の伝統に則ったコンパイル言語、メモリ安全性、ガベージコレクション、構造的型付け、CSP スタイルの並行性などの特徴を持つ。Go のコンパイラ、ツール、およびソースコードは、すべてフリーかつオープンソースである。\\
 \\ \\
 また、軽量スレッディングのための機能、Python のような動的型付け言語のようなプログラミングの容易性、などの特徴もある。Go 処理系としてはコンパイラのみが開発されている。マスコット・キャラクターは Gopher (ホリネズミ)。\\ また、軽量スレッディングのための機能、Python のような動的型付け言語のようなプログラミングの容易性、などの特徴もある。Go 処理系としてはコンパイラのみが開発されている。マスコット・キャラクターは Gopher (ホリネズミ)。\\
-[[https://ja.wikipedia.org/wiki/Go_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E)|Go (プログラミング言語) - Wikipedia]] より\\ +[[wwjp>Go (プログラミング言語)|Go (プログラミング言語) - Wikiwand]] より\\
-</WRAP> +
-</WRAP>+
  
 ===== インストール ===== ===== インストール =====
-Fedora では最新版の Go がインストールされる。\\ +公式: [[https://go.dev/doc/install|Download and install - The Go Programming Language]] [[gtr>https://go.dev/doc/install|翻訳]]\\ 
-2019/09/17 現在の Go の最新バージョンは v1.12.9 である。\\ +<WRAP color_term> 
-Fedora Linux on WSL 2\\ +<WRAP color_command><html><pre
-<code+<font color="#0087FF"><b>$</b></font> <font color="#26A269"><u style="text-decoration-style:solid">sudo</u></font> <font color="#26A269">dnf</font> install <font color="#A347BA">-y</font> golang 
-$ sudo dnf install golang +</pre></html></WRAP> 
-$ go version +<WRAP color_result_long><html><pre> 
-go version go1.12.9 linux/amd64 +リポジトリの更新を読み込み中: 
-</code>+リポジトリを読み込みました。 
 +<b>Package                             </b> <b>Arch      </b> <b>Version                              </b> <b>Repository    </b> <b>         Size</b> 
 +Installing: 
 +<font color="#26A269"> golang                             </font> x86_64     1.23.6-1.fc41                         updates              8.9 MiB 
 +Installing dependencies: 
 +<font color="#26A269"> go-filesystem                      </font> x86_64     3.6.0-5.fc41                          updates              0.0   B 
 +<font color="#26A269"> golang-bin                         </font> x86_64     1.23.6-1.fc41                         updates            113.9 MiB 
 +<font color="#26A269"> golang-src                         </font> noarch     1.23.6-1.fc41                         updates             76.3 MiB 
 +Installing weak dependencies: 
 +<font color="#26A269"> mercurial                          </fontx86_64     6.8.2-1.fc41                          updates             30.8 MiB
  
-GOPATH 環境変数を設定\\ +Transaction Summary: 
-<code+ Installing:         5 packages 
-mkdir -p ~/go + 
-$ echo 'export GOPATH=$HOME/go>> $HOME/.bashrc +パッケージサイズ 47 MiB 、ダウンロードサイズ 47 MiB 。 
-source ~/.bashrc +完了後、230 MiB のサイズが利用されま(インストール 230 MiB、削除 0 B) 
-$ go env GOPATH+[1/5] golang-0:1.23.6-1.fc41.x86_64                                       100% | 336.0 KiB/s | 668.9 KiB |  00m02s 
 +[2/5] go-filesystem-0:3.6.0-5.fc41.x86_64                                 100% |  38.6 KiB/s |   9.0 KiB |  00m00s 
 +[3/5] golang-src-0:1.23.6-1.fc41.noarch                                   100% | 762.2 KiB/s |  12.8 MiB |  00m17s 
 +[4/5] mercurial-0:6.8.2-1.fc41.x86_64                                     100% | 390.4 KiB/s |   6.5 MiB |  00m17s 
 +[5/5] golang-bin-0:1.23.6-1.fc41.x86_64                                   100% | 915.6 KiB/s |  27.5 MiB |  00m31s 
 +------------------------------------------------------------------------------------------------------------------ 
 +[5/5] Total                                                               100% |   1.5 MiB/s |  47.4 MiB |  00m32s 
 +トランザクションを実行中 
 +[1/7] パッケージ ファイルを検証                               100% |   7.0   B/s |   5.0   B |  00m01s 
 +[2/7] トランザクションの準備                                   100% |   0.0   B/s |   5.0   B |  00m08s 
 +[3/7] インストール中 go-filesystem-0:3.6.0-5.fc41.x86_64           100% | 876.0   B/s | 392.0   B |  00m00s 
 +[4/7] インストール中 golang-src-0:1.23.6-1.fc41.noarch             100% |  21.8 MiB/s |  77.2 MiB |  00m04s 
 +[5/7] インストール中 golang-bin-0:1.23.6-1.fc41.x86_64             100% |  64.9 MiB/s | 113.9 MiB |  00m02s 
 +[6/7] インストール中 golang-0:1.23.6-1.fc41.x86_64                 100% |  25.2 MiB/s |   8.9 MiB |  00m00s 
 +[7/7] インストール中 mercurial-0:6.8.2-1.fc41.x86_64               100% |   1.4 MiB/s |  31.1 MiB |  00m22s 
 +完了しました! 
 +</pre></html></WRAP
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font> version 
 +</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +go version go1.23.6 linux/amd64 
 +</pre></html></WRAP> 
 +</WRAP> 
 + 
 +==== Go のワークスペース (GOPATH 環境変数) ==== 
 +公式: [[https://go.dev/doc/gopath_code|How to Write Go Code (with GOPATH) - The Go Programming Language]] [[gtr>https://go.dev/doc/gopath_code|翻訳]]\\ 
 +Go のワークスペースは標準で <html><code>$HOME/go</code></html> です。\\ 
 +<WRAP color_term> 
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font> env GOPATH 
 +</pre></html></WRAP> 
 +<WRAP color_result><html><pre>
 /home/tomoyan/go /home/tomoyan/go
-</code>+</pre></html></WRAP> 
 +</WRAP> 
 + 
 +Go でインストールしたコマンドを使用するには <html><code>$(go env GOPATH)/bin</code></html> を PATH に追加する。\\ 
 +<WRAP color_term> 
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">mkdir</font> <font color="#A347BA">-p</font> ~/go 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">cat</font> <font color="#2A7BDE"><b>&lt;&lt;</b></font> <font color="#A2734C">&apos;EOF&apos;</font> <font color="#2A7BDE"><b>&gt;&gt;</b></font> <u style="text-decoration-style:solid">~/.commonshrc</u> 
 +<font color="#666666"><b># go initialize</b></font> 
 +<font color="#33C7DE"><b>export</b></font> GOPATH=<font color="#A347BA">$</font><font color="#2A7BDE"><b>(</b></font><font color="#26A269">go</font> env GOPATH<font color="#2A7BDE"><b>)</b></font> 
 +<font color="#33C7DE"><b>export</b></font> PATH=$PATH:<font color="#A347BA">$</font><font color="#2A7BDE"><b>(</b></font><font color="#26A269">go</font> env GOPATH<font color="#2A7BDE"><b>)</b></font>/bin 
 +<font color="#F66151"><b>EOF</b></font> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">.</font> <u style="text-decoration-style:solid">~/.bashrc</u> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">echo</font><font color="#999999"> $GOPATH</font> 
 +</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +/home/tomoyan/go/bin: ... 
 +</pre></html></WRAP> 
 +<WRAP color_command><html><pre> 
 +<b class=GRN>$</b> <b class=HIY>echo</b> $GOPATH 
 +</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +/home/tomoyan/go 
 +</pre></html></WRAP> 
 +</WRAP> 
 + 
 +GOPATH を変更するには以下のように設定する。\\ 
 +<WRAP color_term> 
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">mkdir</font> <font color="#A347BA">-p</font> ~/.go 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">cat</font> <font color="#2A7BDE"><b>&lt;&lt;</b></font> <font color="#A2734C">&apos;EOF&apos;</font> <font color="#2A7BDE"><b>&gt;&gt;</b></font> <u style="text-decoration-style:solid">~/.commonshrc</u> 
 +<font color="#666666"><b># go initialize</b></font> 
 +<font color="#33C7DE"><b>export</b></font> GOPATH=$HOME/.go        
 +<font color="#33C7DE"><b>export</b></font> PATH=$PATH:<font color="#A347BA">$</font><font color="#2A7BDE"><b>(</b></font><font color="#26A269">go</font> env GOPATH<font color="#2A7BDE"><b>)</b></font>/bin 
 +<font color="#F66151"><b>EOF</b></font> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">.</font> <u style="text-decoration-style:solid">~/.bashrc</u> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">echo</font><font color="#999999"> $GOPATH</font> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font><font color="#999999"> env GOPATH</font> 
 +</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +/home/tomoyan/.go 
 +</pre></html></WRAP> 
 +</WRAP>
  
 ===== プログラムの作成 ===== ===== プログラムの作成 =====
-Go でプログラムを作成するには、$GOPATH/src サブディレクトリに .go 拡張子を持つファイルを作成する。\\ +公式: [[https://go.dev/doc/tutorial/getting-started|Tutorial: Get started with Go - The Go Programming Language]] [[gtr>https://go.dev/doc/tutorial/getting-started|翻訳]]\\ 
-<code+\\ 
-$ mkdir -p $GOPATH/src/hello && cd $GOPATH/src/hello +Go でプログラムを作成するには、<html><code>$(go env GOPATH)/src</code></html> サブディレクトリに .go 拡張子を持つファイルを作成する。\\ 
-vi hello.go +go.mod ファイルを作成してコードの依存関係追跡を有効にする。\\ 
-</code+<WRAP color_term
-<code go hello.go> +<WRAP color_command><html><pre> 
-package main+<font color="#0087FF"><b>$</b></font> <font color="#26A269">mkdir</font> <font color="#A347BA">-p</font> <font color="#A347BA">$</font><font color="#2A7BDE"><b>(</b></font><font color="#26A269">go</font> env GOPATH<font color="#2A7BDE"><b>)</b></font>/src/haruo <font color="#2A7BDE"><b>&amp;&amp;</b></font> <font color="#26A269">cd</font> <font color="#A347BA">$</font><font color="#2A7BDE"><b>(</b></font><font color="#26A269">go</font> env GOPATH<font color="#2A7BDE"><b>)</b></font>/src/haruo 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font> mod init example/haruo 
 +</pre></html></WRAP
 +<WRAP color_result><html><pre> 
 +go: creating new go.mod: module example/haruo 
 +</pre></html></WRAP> 
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">cat</font> <u style="text-decoration-style:solid">go.mod</u
 +</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +module example/haruo
  
-import "fmt"+go 1.23.6 
 +</pre></html></WRAP> 
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">cat</font> <font color="#2A7BDE"><b>&lt;&lt;</b></font> <font color="#A2734C">&apos;EOF&apos;</font> <font color="#2A7BDE"><b>&gt;</b></font> <u style="text-decoration-style:solid">haruo.go</u> 
 +    <font color="#F66151"><b>package</b></font> main
  
-func main() { +    <font color="#26A269">import</font> <font color="#A2734C">&quot;fmt&quot;</font>
-    fmt.Println("Hello, World!"+
-+
-</code>+
  
-変更を保存し、同じディレクトリで hello.go を実行する。\\ +    <font color="#F66151"><b>func</b></font> main<font color="#2A7BDE"><b>()</b></font> <font color="#2A7BDE"><b>{</b></font> 
-<code+        <font color="#F66151"><b>fmt.Println</b></font><font color="#33D17A"><b>(</b></font><font color="#F66151"><b>&quot;Haruo, World!&quot;</b></font><font color="#33D17A"><b>)</b></font> 
-$ go run hello.go +    <font color="#2A7BDE"><b>}</b></font> 
-Hello, World! +<font color="#F66151"><b>EOF</b></font> 
-</code>+</pre></html></WRAP> 
 +</WRAP> 
 + 
 +変更を保存し、同じディレクトリで haruo.go を実行する。\\ 
 +<WRAP color_term
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font> run <u style="text-decoration-style:solid">.</u> 
 +</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +Haruo, World! 
 +</pre></html></WRAP> 
 +</WRAP>
  
 hello.go をビルドするは簡単である。\\ hello.go をビルドするは簡単である。\\
-<code+<WRAP color_term
-$ go build +<WRAP color_command><html><pre> 
-ls +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font> build 
-hello  hello.go +<font color="#0087FF"><b>$</b></font> <font color="#26A269">ll</font> 
-$ ./hello +</pre></html></WRAP> 
-Hello, World! +<WRAP color_result><html><pre> 
-</code>+合計 2092 
 +-rw-r--r-- 1 tomoyan tomoyan      32  3月  5 10:31 go.mod 
 +-rwxr-xr-x 1 tomoyan tomoyan 2130671  3月  5 10:42 <font color="#33D17A"><b>haruo</b></font> 
 +-rw-r--r-- 1 tomoyan tomoyan     107  3月  5 10:32 haruo.go 
 +</pre></html></WRAP> 
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">./haruo</font> 
 +</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +Haruo, World! 
 +</pre></html></WRAP> 
 +</WRAP>
  
 さらに **go install** で **$GOPATH/bin** にインストールされる。 \\ さらに **go install** で **$GOPATH/bin** にインストールされる。 \\
-<code+<WRAP color_term
-$ go install +<WRAP color_command><html><pre> 
-ls $GOPATH/bin +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font> install 
-hello +<font color="#0087FF"><b>$</b></font> <font color="#26A269">ll</font> <font color="#A347BA">$</font><font color="#2A7BDE"><b>(</b></font><font color="#26A269">go</font> env GOPATH<font color="#2A7BDE"><b>)</b></font>/bin 
-</code>+</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +合計 2084 
 +-rwxr-xr-x 1 tomoyan tomoyan 2130671  3月  5 10:33 <font color="#33D17A"><b>haruo</b></font> 
 +</pre></html></WRAP> 
 +</WRAP>
 また、**$GOPATH/pkg** のすべての依存関係を構築およびキャッシュする。\\ また、**$GOPATH/pkg** のすべての依存関係を構築およびキャッシュする。\\
  
 プログラムは **$GOPATH/bin** にインストールされるため、一般的には PATH 環境変数に追加して、フルパスを指定せずに Go プログラムを実行できるようにする。\\ プログラムは **$GOPATH/bin** にインストールされるため、一般的には PATH 環境変数に追加して、フルパスを指定せずに Go プログラムを実行できるようにする。\\
-<code+<WRAP color_term
-$ echo 'export PATH=$PATH:$GOPATH/bin>> $HOME/.bashrc +<WRAP color_command><html><pre> 
-source ~/.bashrc +<font color="#0087FF"><b>$</b></font> <font color="#26A269">echo</font> <font color="#A2734C">&apos;export PATH=$PATH:$</font><font color="#2A7BDE"><b>(</b></font><font color="#A2734C">go env GOPATH</font><font color="#2A7BDE"><b>)</b></font><font color="#A2734C">/bin&apos;</font<font color="#2A7BDE"><b>&gt;&gt;</b></font> <u style="text-decoration-style:solid">~/.bashrc</u> 
-hello +<font color="#0087FF"><b>$</b></font> <font color="#26A269">.</font> <u style="text-decoration-style:solid">~/.bashrc</u> 
-Hello, World! +<font color="#0087FF"><b>$</b></font> <font color="#26A269">haruo</font> 
-</code>+</pre></html></WRAP> 
 +<WRAP color_result><html><pre> 
 +Haruo, World! 
 +</pre></html></WRAP> 
 +</WRAP>
  
 ===== Go パッケージのインストール ===== ===== Go パッケージのインストール =====
 +Go パッケージは **go install** コマンドでインストールできる。\\
  
-==== アップストリームの Go パッケージ ==== +==== gotop ==== 
-アップストリームプロジェクトは **go get** コマンドでインストールできる。\\ +<WRAP #gotop_video> 
-<code+{{:golang:gotop_001.mp4?550x330|gotop}}\\ 
-$ go get github.com/gorilla/context +</WRAP> 
-</code+<html><script> 
-ゴ、ゴリラ? (gorilla)...\\+  const video = document.getElementById('gotop_video').getElementsByTagName('video')[0]; 
 +  video.setAttribute('autoPlay','true'); 
 +  video.setAttribute('loop','true'); 
 +  video.addEventListener("canplay", function() { 
 +    setTimeout(function() { 
 +      video.play(); 
 +    }, 1); 
 +  }); 
 +</script></html> 
 +<del>[[git>cjbassi/gotop|cjbassi/gotop: A terminal based graphical activity monitor inspired by gtop and vtop]]</del>\\ 
 +[[git>xxxserxxx/gotop|GitHub - xxxserxxx/gotop: A terminal based graphical activity monitor inspired by gtop and vtop]]\\ 
 +\\ 
 +<html><code>go install</code></html> でインストールる。\\ 
 +<WRAP color_term
 +<WRAP color_command><html><pre> 
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font> install github.com/xxxserxxx/gotop/v4/cmd/gotop@latest 
 +</pre></html></WRAP
 +<WRAP color_result_hlong><html><pre> 
 +go: downloading github.com/xxxserxxx/gotop/v4 v4.2.
 +go: downloading github.com/VictoriaMetrics/metrics v1.18.1 
 +go: downloading github.com/gizak/termui/v3 v3.1.0 
 +go: downloading github.com/droundy/goopt v0.0.0-20220217183150-48d6390ad4d1 
 +go: downloading github.com/cloudfoundry-attic/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21 
 +go: downloading github.com/shibukawa/configdir v0.0.0-20170330084843-e180dbdc8da0 
 +go: downloading github.com/xxxserxxx/lingo/v2 v2.0.1 
 +go: downloading github.com/anatol/smart.go v0.0.0-20220917195147-c0b00d90f8cc 
 +go: downloading github.com/jaypipes/ghw v0.9.0 
 +go: downloading github.com/shirou/gopsutil v3.20.12+incompatible 
 +go: downloading github.com/VividCortex/ewma v1.2.0 
 +go: downloading github.com/distatus/battery v0.10.0 
 +go: downloading github.com/mattn/go-runewidth v0.0.13 
 +go: downloading github.com/mitchellh/go-wordwrap v1.0.1 
 +go: downloading github.com/nsf/termbox-go v1.1.1 
 +go: downloading github.com/valyala/histogram v1.2.0 
 +go: downloading github.com/BurntSushi/toml v1.1.0 
 +go: downloading golang.org/x/sys v0.0.0-20220915200043-7b5979e65e41 
 +go: downloading github.com/valyala/fastrand v1.1.0 
 +go: downloading github.com/rivo/uniseg v0.2.0 
 +go: downloading github.com/ghodss/yaml v1.0.0 
 +go: downloading github.com/jaypipes/pcidb v1.0.0 
 +go: downloading gopkg.in/yaml.v2 v2.4.0 
 +go: downloading github.com/mitchellh/go-homedir v1.1.0 
 +</pre></html></WRAP> 
 +</WRAP>
  
 +gotop を実行する😉\\
 +<WRAP color_term>
 +<WRAP color_command><html><pre>
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">gotop</font>
 +</pre></html></WRAP>
 +</WRAP>
  
 +gotop を NVIDIA サポートを有効化して実行するには、''--nvidia'' オプションを付ける😍\\
 +<WRAP color_term>
 +<WRAP color_command><html><pre>
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">gotop</font> <font color="#A347BA">--nvidia</font>
 +</pre></html></WRAP>
 +</WRAP>
 +
 +使い方\\
 +<WRAP color_term>
 +<WRAP color_command><html><pre>
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">gotop</font> <font color="#A347BA">--help</font>
 +</pre></html></WRAP>
 +<WRAP color_result><html><pre>
 +Usage of gotop:
 + A terminal based graphical activity monitor, inspired by gtop and vtop
 +Options:
 +  --remote-name=        Remote: name of remote gotop
 +  --remote-url=         Remote: URL of remote gotop
 +  --remote-refresh=     Remote: Frequency to refresh data, in seconds
 +  -c, --color=default   Set a colorscheme.
 +  -S, --graphscale=7    Graph scale factor, &gt;0
 +  -v, -V, --version     Print version and exit.
 +  -p, --percpu          Show each CPU in the CPU widget.
 +  --no-percpu           Show aggregate CPU in the CPU widget.
 +  -a, --averagecpu      Show average CPU in the CPU widget.
 +  --no-averagecpu       Disable show average CPU in the CPU widget.
 +  --fahrenheit          Show temperatures in fahrenheit.
 +  --celsius             Show temperatures in celsius.
 +  -s, --statusbar       Show a statusbar with the time.
 +  --no-statusbar        Disable statusbar.
 +  -r, --rate=1s         Refresh frequency. Most time units accepted.  &quot;1m&quot; = refresh every minute.  &quot;100ms&quot; = refresh every 100ms.
 +  -l, --layout=default  Name of layout spec file for the UI. Use &quot;-&quot; to pipe.
 +  -i, --interface=all   Select network interface. Several interfaces can be defined using comma separated values. Interfaces can also be ignored using &quot;!&quot;
 +  -x, --export=         Enable metrics for export on the specified port.
 +  --mbps                Show network rate as mbps.
 +  --bytes               args.no-mbps
 +  --test                Runs tests and exits with success/failure code.
 +  --no-test             Disable tests.
 +  -C                    Config file to use instead of default (MUST BE FIRST ARGUMENT).
 +  --nvidia              Enable NVidia GPU metrics.
 +  --no-nvidia           Disable NVidia GPU metrics.
 +  --list=               List &lt;devices|layouts|colorschemes|paths|keys|langs&gt;
 +      devices: Prints out device names for filterable widgets
 +      layouts: Lists built-in layouts
 +      colorschemes: Lists built-in colorschemes
 +      paths: List out configuration file search paths
 +      widgets: Widgets that can be used in a layout
 +      keys: Show the keyboard bindings.
 +      langs: Show supported language translations.
 +  --write-config  Write out a default config file.
 +  -h, --help      Show usage message
 +  --version       Show version
 +
 +</pre></html></WRAP>
 +</WRAP>
 +
 +
 +Go 1.17 から <html><code>go get</code></html> でのインストールが非推奨になった🤔\\
 +<WRAP color_term>
 +<WRAP color_command><html><pre>
 +<font color="#0087FF"><b>$</b></font> <font color="#26A269">go</font> get github.com/xxxserxxx/gotop
 +</pre></html></WRAP>
 +<WRAP color_result><html><pre>
 +go: go.mod file not found in current directory or any parent directory.
 + 'go get' is no longer supported outside a module.
 + To build and install a command, use 'go install' with a version,
 + like 'go install example.com/cmd@latest'
 + For more information, see https://golang.org/doc/go-get-install-deprecation
 + or run 'go help get' or 'go help install'.
 +</pre></html></WRAP>
 +</WRAP>
  
 ===== 参考文献 ===== ===== 参考文献 =====
 [[https://developer.fedoraproject.org/tech/languages/go/go-installation.html|Go — Fedora Developer Portal]]\\ [[https://developer.fedoraproject.org/tech/languages/go/go-installation.html|Go — Fedora Developer Portal]]\\
 [[https://developer.fedoraproject.org/tech/languages/go/go-programs.html|Writing Go programs — Fedora Developer Portal]]\\ [[https://developer.fedoraproject.org/tech/languages/go/go-programs.html|Writing Go programs — Fedora Developer Portal]]\\
 +
 +[[https://www.paloaltonetworks.jp/company/in-the-news/2019/the-gopher-in-the-room-analysis-of-golang-malware-in-the-wild|Gopher の人気度は: インターネット上の GoLang マルウェア分析 - Palo Alto Networks]]\\
 +**Grumpy**\\
 +[[https://opensource.googleblog.com/2017/01/grumpy-go-running-python.html|Grumpy: Go running Python! | Google Open Source Blog]]\\
 +[[https://qiita.com/e-a-st/items/998250b3d430d82594c2|Grumpy(Go running Python)を試してみた。 - Qiita]]\\
 +[[https://japan.zdnet.com/article/35094636/|グーグル、Pythonコードを「Go」言語に変換する「Grumpy」を公開 - ZDNet Japan]]\\
 +
 +==== 付録 ====
 +[[tw>tomoyan596/status/1375684357428404228|「git の shallow clone で高速に clone しつつ、バックグランドで unshallow してくれる go で書かれたツールが存在しますねぇ🤔なるほど...」 / Twitter]]\\
  
  • golang.1568703246.txt.gz
  • 最終更新: 2019/09/17 15:54
  • by ともやん