Ben Chuanlong Du's Blog

It is never too late to learn.

Hands on the Cobra Module in Golang

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Comments

  1. Cobra support groups of flags which appear together or are mutually exclusive. For detailed discussions, please refer to Flag Groups .

Quickly Start a Cobra-based project

Below is an example of creating a cobra-based project "icon".

String in Golang

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Tips and Traps

  1. string is a primitive type in Golang, which means a string value has no methods on it but instead you have to use built-in functions (e.g., len) or functions in other modules (e.g., the strings

Embed File in Golang Binary

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Tips and Traps

  1. My understanding is that embeded files are loaded into memory, which means that the Go app might consume large memory if you embed a large file.

  2. The "embed" package does not work with the Gophernotes kernel (for Jupyter/Lab notebooks).

Run System Command in Go

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

Comments

  1. exec.Command takes a shell command and optional arguments passed to the shell command, e.g., exec.Command("ls", "-lha"). It does not work if you pass a shell command with arguments as a single string to exec.Command