This invaluable chapter talked about many interesting topics, including reading files, writing to files, using the Docker API, and using the flag, cobra, and viper packages. Nevertheless, there are many more topics related to systems programming not mentioned in this chapter, such as working with directories; copying, deleting, and renaming files; dealing with UNIX users, groups, and UNIX processes; changing UNIX file permissions; generating sparse files; file locking and creating; and using and rotating your own log files, as well as the information found in the structure returned by the os.Stat() call.
At the end of this chapter, I presented two advanced utilities written in Go. The first one allowed you to inspect the state of the registers, while the second one showed you a technique that allows you to trace the system calls of any program.
The next chapter will talk...