Variabili d'Ambiente

Il package os contiene anche funzioni per il trattamento di variabili d'ambiente.

(610environment-variables.go):

package main

import "os"
import "strings"
import "fmt"

func main() {

	// Settare e stampare variabili d'ambiente
	os.Setenv("FOO", "1")
	fmt.Println("FOO:", os.Getenv("FOO"))
	fmt.Println("BAR:", os.Getenv("BAR"))

	// Stampa di tutte le variabili d'ambiente
	fmt.Println()
	// Slice di stringhe nel formato KEY=value
	for _, e := range os.Environ() {
		// Split con separatore dato
		pair := strings.Split(e, "=")
		fmt.Println(pair[0] + "-->" + pair[1])
	}
}

La funzione Setenv() pone una variabile nell'ambiente. La funzione Getenv() ottiene il valore di una variabile d'ambiente.

La funzione Environ() ritora una slice di stringhe contenente tutte le variabili d'ambiente,di cui ogni elemento ha il formato CHIAVE=valore.

La funzione stringa Split() genera un'altra slice con come elementi i token separati dal separatore indicato.