Informazioni di sistema in Go

Mattepuffo's logo
Informazioni di sistema in Go

Informazioni di sistema in Go

Per ottenere informazioni di sistema in Go abbiamo l'ottimo package sysinfo!

Prima di tutto dobbiamo "installarlo":

go get github.com/zcalusic/sysinfo

Fatto questo, passiamo al codice:

package main

import (
	"encoding/json"
	"fmt"
	"os/user"

	"github.com/zcalusic/sysinfo"
)

func main() {
	current, err := user.Current()
	if err != nil {
		fmt.Println(err)
	}

	if current.Uid != "0" {
		fmt.Println("Privilegi elevati richiesti")
	}

	var si sysinfo.SysInfo

	si.GetSysInfo()

	data, err := json.MarshalIndent(&si, "", "  ")
	if err != nil {
		fmt.Println(err)
	}

	fmt.Println(string(data))
}

Considerate che su Linux mi ha richiesto i privilegi elevati.

L'output sarà in formato JSON, ma ben leggibile.

Enjoy!


Condividi

Commentami!