Maison  >  Article  >  développement back-end  >  Comment récupérer les valeurs GOOS et GOARCH à partir d'un exécutable Go ?

Comment récupérer les valeurs GOOS et GOARCH à partir d'un exécutable Go ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-31 07:43:30690parcourir

How to Retrieve GOOS and GOARCH Values from a Go Executable?

Détermination des valeurs GOOS et GOARCH pour un exécutable

Lorsqu'on lui donne un fichier exécutable, vérifier les valeurs de GOOS (système d'exploitation) et GOARCH (architecture du processeur) utilisées lors de son une compilation devient nécessaire. Cette enquête se concentre sur l'identification d'un mécanisme permettant de récupérer ces valeurs à partir de l'exécutable lui-même.

Comprendre le package d'exécution

Le package d'exécution dans Go offre un aperçu des caractéristiques d'exécution d'un programme. Plus précisément, il contient des constantes ou des fonctions qui fournissent des informations sur les variables d'environnement GOOS, GOARCH, GOPATH et GOROOT.

Récupération des valeurs GOOS et GOARCH

Pour déterminer les valeurs GOOS et GOARCH, le moteur d'exécution Le package fournit les constantes suivantes :

  • runtime.GOOS : représente le système d'exploitation utilisé lors de la compilation.
  • runtime.GOARCH : indique l'architecture du processeur ciblée par le processus de compilation.

Ces constantes contiennent les valeurs exactes qui ont été définies au moment de la compilation.

Exemple

Considérez l'extrait de code suivant :

package main

import (
    "fmt"
    "runtime"
)

func main() {
    fmt.Println(runtime.GOOS)
    fmt.Println(runtime.GOARCH)
}

Lorsque ce programme est exécuté, il affichera les valeurs de GOOS et GOARCH spécifiées lors de la compilation. Par exemple, si GOOS est défini sur "windows" et GOARCH est défini sur "amd64", le programme affichera :

windows
amd64

Cela restera vrai même si GOOS et GOARCH sont modifiés par la suite. Les valeurs stockées dans les constantes du package d'exécution restent celles spécifiées au moment de la compilation.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn