西维蜀黍

【Docker】Alpine Linux 软件管理

Update the Package list

# Update the Package list
$ apk update
  ...


【Linux】搭建 DHCP 服务器

Installing DHCP Server

Before proceeding towards installing a DHCP server, first update the packages by running the following command in Terminal:

$ sudo apt-get update

Then run the following command in the Terminal to install DCHP server:

$ sudo apt-get install isc-dhcp-server -y
  ...


【macOS】制作 macOS 安装 U 盘

Refer to https://dortania.github.io/OpenCore-Install-Guide/installer-guide/mac-install.html

下载镜像

Approach 1 - Munki’s InstallInstallMacOS utility

In order to run it, just copy and paste the below command in a terminal window:

mkdir -p ~/macOS-installer && cd ~/macOS-installer && curl https://raw.githubusercontent.com/munki/macadmin-scripts/main/installinstallmacos.py > installinstallmacos.py && sudo python installinstallmacos.py

As you can see, we get a nice list of macOS installers. If you need a particular versions of macOS, you can select it by typing the number next to it. For this example we’ll choose 10:

This is going to take a while as we’re downloading the entire 8GB+ macOS installer, so it’s highly recommended to read the rest of the guide while you wait.

Once finished, you’ll find in your ~/macOS-Installer/ folder a DMG containing the macOS Installer, called Install_macOS_11.1-20C69.dmg for example. Mount it and you’ll find the installer application.

  • Note: We recommend to move the Install macOS.app into the /Applications folder, as we’ll be executing commands from there.
  • Note 2: Running Cmd+Shift+G in Finder will allow you to easily jump to ~/macOS-installer

Approach 2 -Command Line Software Update Utility

Open a terminal window then copy and paste the below command:

softwareupdate --list-full-installers;echo;echo "Please enter version number you wish to download:";read;$(if [ -n "$REPLY" ]; then; echo "softwareupdate --fetch-full-installer --full-installer-version "$REPLY; fi);

  ...


【Golang】使用 - 执行shell命令

执行命令并获得输出结果

最简单的例子就是运行ls -lah并获得组合在一起的stdout/stderr输出。

func main() {
	cmd := exec.Command("ls", "-lah")
	out, err := cmd.CombinedOutput()
	if err != nil {
		log.Fatalf("cmd.Run() failed with %s\n", err)
	}
	fmt.Printf("combined out:\n%s\n", string(out))
}
  ...


【Golang】package - os/exec

func Command(name string, arg ...string) *Cmd

func Command(name string, arg ...string) *Cmd

Command returns the Cmd struct to execute the named program with the given arguments.

It sets only the Path and Args in the returned structure.

If name contains no path separators, Command uses LookPath to resolve name to a complete path if possible. Otherwise it uses name directly as Path.

The returned Cmd’s Args field is constructed from the command name followed by the elements of arg, so arg should not include the command name itself. For example, Command(“echo”, “hello”). Args[0] is always name, not the possibly resolved Path.

  ...